A calibration method for a pipeline analog-to-digital converter based on a genetic algorithm optimization

By constructing a fuzzy controller based on a genetic algorithm and utilizing quantization codes and proportional coefficients, the nonlinearity problem of pipelined analog-to-digital converters is solved, achieving efficient error compensation, improving the signal-to-noise ratio and spurious-free dynamic range, and simplifying the calibration process.

CN120301417BActive Publication Date: 2025-11-04HEFEI UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510356937.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-25
Publication Date
2025-11-04
Estimated Expiration
2045-03-25

AI Technical Summary

Technical Problem

Pipeline analog-to-digital converters are affected by capacitor mismatch, comparator offset, gain error and non-ideal factors, resulting in output nonlinearity. Existing calibration methods are computationally complex, susceptible to noise interference or lack real-time performance.

Method used

A fuzzy controller based on genetic algorithm optimization is adopted. The quantization code and scaling factor of the pipeline analog-to-digital converter are used as inputs to the genetic operator to construct the fuzzy controller. The parameters of the fuzzy controller are optimized by selection, crossover and mutation processes to achieve error compensation.

Benefits of technology

It effectively fits the nonlinear error of pipelined analog-to-digital converters, improves the signal-to-noise ratio and spurious-free dynamic range, increases the effective number of bits, simplifies the calibration process, and improves operating speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120301417B_ABST
    Figure CN120301417B_ABST
Patent Text Reader

Abstract

The application discloses a kind of calibration methods of pipeline analog-digital converter based on genetic algorithm optimization, it is related to analog-digital converter conversion field, including: reference analog-digital converter, genetic algorithm optimization module, fuzzy controller, and calibration output unit;Among them, reference analog-digital converter and the analog-digital converter to be calibrated are used to quantize the same signal, to obtain the reference value of signal quantization;Genetic algorithm optimization module is used to optimize the proportion coefficient of input data and constructs the membership function of fuzzy controller;Fuzzy controller is constructed using optimized parameter and obtains error compensation value according to input data calculation;Calibration output unit is superimposed to obtain calibration output with the output of analog-digital converter to be calibrated and error compensation value.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of pipeline analog-to-digital converter calibration, in particular to a pipeline analog-to-digital converter calibration method based on genetic algorithm optimization. BACKGROUND

[0002] With the increasing requirements of modern electronic systems on signal processing speed and accuracy, as the key component connecting analog and digital signals, the performance of analog-to-digital converters directly affects the performance of the system. Pipeline analog-to-digital converters are the first choice for many high-performance architectures due to their high speed and high precision characteristics. However, with the improvement of process and the reduction of power voltage, as well as the non-ideal factors in the circuit, the non-linearity in the circuit becomes more and more serious. Therefore, effectively calibrating these errors has become a key problem in designing high-performance pipeline analog-to-digital converters.

[0003] Digital calibration technology can effectively compensate for various errors in pipeline ADCs without significantly increasing hardware complexity, and has good calibration effect. Common calibration methods include correlation-based calibration methods, which inject a set of PN sequences externally, and then calculate the error based on the correlation between the input signal and the PN sequence. This method is simple and efficient, and is suitable for scenarios where error distribution is complex and difficult to analyze. However, this method has high computational complexity and is susceptible to noise. Histogram-based calibration method is a simple and intuitive signal distribution analysis technology that can effectively identify and calibrate signal distribution deviation, and is suitable for calibration of various types of devices. However, this method is sensitive to data volume, has limited dynamic characteristic analysis, is sensitive to noise, and lacks real-time performance. The calibration method based on neural network can realize comprehensive calibration of pipeline analog-to-digital converter errors. Due to the powerful fitting characteristics and flexibility of neural networks, it has become an effective way to solve ADC nonlinearity problems. However, this method faces problems such as high computational complexity, large number of parameters, and optimization. In order to avoid the neural network from falling into a local minimum during training, some related methods combine particle swarm optimization and gradient descent algorithm to reduce the amount of calculation while finding the optimal solution. Some related methods use genetic algorithm to optimize the initialization parameters of the neural network, so that the neural network achieves optimal effect during training.

[0004] The core idea of fuzzy control is to simulate the decision-making process of human beings through fuzzy rules, so as to realize the control of complex systems. Fuzzy control is suitable for handling systems that are difficult to quantify, such as nonlinear systems, high-dimensional systems, or dynamically changing systems. Fuzzy control has wide application in industrial automation, mechanical manufacturing, and medical equipment due to its strong flexibility, adaptability, and ease of implementation. Therefore, applying fuzzy control to the calibration of pipeline analog-to-digital converters can simplify the calibration process and provide a new calibration scheme. SUMMARY

[0005] (One) technical problems solved

[0006] The present application aims at the problem that the pipeline analog-digital converter is affected by the capacitor mismatch, comparator bias, gain error and non-ideal factors, etc., causing the nonlinear problem of the analog-digital converter output, the method takes the proportional coefficient of the input quantization code and the membership function of the fuzzy controller as the genetic operator, obtains the optimized genetic operator through the processes of selection, crossover and mutation, and the membership function of the fuzzy controller constructed by the genetic factor effectively realizes the fitting of the nonlinear error of the pipeline analog-digital converter, and the fuzzy controller has simple structure and fast running speed.

[0007] (Two) technical solutions

[0008] In order to achieve the above object, the present application is implemented by the following technical solutions: a calibration method of a pipeline analog-digital converter based on genetic algorithm optimization, applied to a calibration system composed of a reference analog-digital converter, a genetic algorithm optimization module, a fuzzy controller and a data output unit;

[0009] The pipeline analog-digital converter to be calibrated and the reference analog-digital converter are connected to the same signal source, and after the input signal V in of the same signal source is quantized, the M (M≥6) level quantization digital codes D1, D2, …, D M of the pipeline analog-digital converter to be calibrated are obtained, and the actual output value D out1 of the pipeline analog-digital converter to be calibrated and the ideal output value D out2 of the reference analog-digital converter are obtained, so as to obtain the quantization output error value E error of the pipeline analog-digital converter to be calibrated and the reference analog-digital converter. out2 -D out1 ;

[0010] The genetic algorithm optimization module takes the pre-constructed fuzzy controller membership function and the proportional coefficient of the input quantization code as the genetic operator, and takes the calibrated error value as the fitness function, and obtains the optimized operator through the processes of selection, crossover and mutation, and finally builds the required fuzzy controller according to the optimized operator;

[0011] The fuzzy controller module is constructed by using the optimized parameters, takes the value obtained by multiplying the second to fifth level quantization digital codes D2, D3, D4, D5 of the pipeline analog-digital converter by the respective proportional coefficients and then superimposing the values as the input of the fuzzy controller, and the fuzzy controller obtains the error compensation value E cal according to the input reasoning.

[0012] The calibration output unit obtains the actual output value D out1The error compensation value E calculated by the fuzzy controller constructed by the optimization algorithm cal After superposition, the calibration output value D of the pipeline analog-to-digital converter to be calibrated is obtained cal .

[0013] Preferably, the pre-constructed fuzzy controller structure is obtained by the following steps:

[0014] Step 1: The pre-constructed fuzzy controller adopts the Mamdani model and uses a single-input single-output structure;

[0015] Step 2: The input subset of the fuzzy controller is seven, which are defined as NB, NM, NS, ZO, PS, PM and PB respectively, and the triangular membership function is used for the input of the fuzzy controller;

[0016] Step 3: The output subset of the fuzzy controller is seven, which are defined as NB, NM, NS, ZO, PS, PM and PB respectively, and the triangular membership function is used for the output of the fuzzy controller;

[0017] Step 4: The constructed fuzzy rule base is:

[0018] if INPUT = NB, then OUTPUT = NB;

[0019] if INPUT = NM, then OUTPUT = NM;

[0020] if INPUT = NS, then OUTPUT = NS;

[0021] if INPUT = ZO, then OUTPUT = ZO;

[0022] if INPUT = PS, then OUTPUT = PS;

[0023] if INPUT = PM, then OUTPUT = PM;

[0024] if INPUT = PB, then OUTPUT = PB;

[0025] Step 5: According to the input fuzzy subset and membership, the output fuzzy subset and membership are obtained by using the "max-min" composition operator reasoning;

[0026] Step 6: According to the output fuzzy subset and membership, the error compensation value is obtained by using the centroid method to defuzzify.

[0027] Preferably, the optimization process of the genetic algorithm optimization module is obtained by the following steps:

[0028] Step A1: using pre-constructed fuzzy controller membership function interval value and input quantization code proportion coefficient as genetic operator;

[0029] Step A2: creating genetic operator population, initializing population according to range of each genetic operator;

[0030] Step A3: calculating fitness of each individual in initial population, obtaining average fitness of population, finding optimal individual and saving optimal fitness value and optimal individual in register;

[0031] Step A4: selecting chromosome using tournament method, updating individual in population;

[0032] Step A5: crossing individual operator in population, obtaining new individual;

[0033] Step A6: mutating individual operator in population, obtaining new individual;

[0034] Step A7: calculating fitness of each individual in new population obtained by selection, crossing and mutation, calculating average fitness of population, and finding optimal chromosome in population;

[0035] Step A8: comparing optimal chromosome in population with fitness value saved in register, and updating value in register;

[0036] Step A9: if iteration reaches set number of times, executing step A10, otherwise returning to step A4;

[0037] Step A10: extracting optimal individual from register, and constructing fuzzy controller according to genetic operator value of the individual.

[0038] Preferably, the step A1 comprises:

[0039] A1.1: the input quantization code is second to fourth quantization digital code D2, D3, D4, D5 of pipeline analog-to-digital converter to be calibrated, each quantization digital code is multiplied by corresponding proportion coefficient K D2 , K D3 , K D4 , K D5 and then superimposed, wherein K D2 , K D3 , K D4 , K D5 is used as genetic operator for optimization;

[0040] A1.2: the pre-constructed fuzzy controller membership functions are all triangular membership functions, wherein the input and output fuzzy subsets are both 7, namely NB, NM, NS, ZO, PS, PM and PB; wherein the boundaries of the NB and PB fuzzy subsets are determined, and the membership function has only one end point value to be optimized, and when the NM, NS, ZO, PS and PM membership functions are constructed, each membership function has two boundaries and one middle end point value to be optimized;

[0041] A1.3: the number of genetic operators is determined, the input membership functions have a total of 1+3*5+1=17 values to be optimized, and the output membership functions have a total of 1+3*3+1=17 values to be optimized, and the corresponding proportional coefficient values have a total of 4 values to be optimized, so the number of genetic operators is a total of 38.

[0042] The step A2 comprises:

[0043] A2.1: the range of the genetic operator corresponding to the proportional coefficient is determined, and the error weight size corresponding to each level of quantization code is determined through data analysis;

[0044] A2.2: the range of the genetic operator corresponding to the membership function is determined, and each value to be optimized is given a proper fluctuation range on the basis of the uniformly constructed triangular membership function;

[0045] A2.3: the population is initialized according to the range of each genetic operator.

[0046] Preferably, the step A3 comprises:

[0047] Step A3.1: according to the genetic operator of each individual, the corresponding proportional coefficient, and the input and output membership functions are constructed;

[0048] Step A3.2: input test data, apply the fuzzy controller built by the proportional coefficient and the membership function, and calculate the error compensation value E cal , then superimpose the D out1 of the input signal and the error compensation value E cal to obtain the calibrated output D cal , finally, the ideal output value D out2 of the input signal and the calibrated output D cal are subtracted to obtain the compensated error value, the average value of the compensated error of the test data is calculated, and the value is taken as the fitness of the individual;

[0049] Step A3.3: the fitness value of each individual in the population is calculated, and the average fitness in the population is calculated.

[0050] Step A3.4: Find the individual with the lowest fitness value in the population, and save the genetic operator and fitness value of the individual to the register.

[0051] Preferably, the step A4 comprises:

[0052] Step A4.1: Initialize a new population with all values being 0;

[0053] Step A4.2: Get the number of individuals in the population, and extract a sample of 20% of the original population;

[0054] Step A4.3: Randomly extract 20% of the individuals in the original population, and select the individual with the lowest fitness value;

[0055] Step A4.4: Keep the individual with the lowest fitness value found, and copy the individual to the new population;

[0056] Step A4.5: Repeat A4.3-A4.4 until all individuals in the new population are updated.

[0057] Preferably, the step A5 comprises:

[0058] Step A5.1: Get the number of individuals in the population, and perform the following steps on the individuals in the population;

[0059] Step A5.2: Generate a random number with a value ranging from 0 to 1, which is the crossover probability;

[0060] Step A5.3: Determine the size of the value and the set crossover value, if the value is less than the size of the set crossover value, perform the crossover operation, perform the following steps A5.4-A5.5, otherwise the current individual does not perform crossover;

[0061] Step A5.4: Randomly select the individual to be crossed in the population, and randomly select the node to be crossed;

[0062] Step A5.5: Exchange the values of the genetic operators to be crossed in the current individual and the selected individual to be crossed.

[0063] Preferably, the step A6 comprises:

[0064] Step A6.1: Get the number of individuals in the population, and get how many genetic operators each individual has;

[0065] Step A6.2: Randomly generate a mutation probability M for each genetic operator X of each individual, with the mutation probability ranging from 0 to 1;

[0066] Step A6.3: If the randomly generated mutation probability M is less than the set mutation probability, then the genetic operator is mutated, and steps A6.4 to A6.6 are executed; otherwise, the genetic operator is not mutated.

[0067] Step A6.4: Generate a random number N, the value of which is in the range of (0 to 1);

[0068] Step A6.5: If the random number N is less than or equal to 0.5, the mutation value increases, and the mutated value is: X = X * (1 + M); if the random number N is greater than 0.5, the mutation value decreases, and the mutated value is: X = X * (1 - M).

[0069] Step A6.6: Check whether the mutated X value exceeds the set range. If the X value exceeds the upper limit of the set range, set the X value to the upper limit of the set range; if the X value is less than the lower limit of the set range, set the X value to the lower limit of the set range.

[0070] Preferably, the input is calculated by a fuzzy controller to obtain the error compensation value E. cal It is obtained by following these steps:

[0071] Step B.1: Based on the genetic operators obtained by the genetic algorithm optimization, construct the input and output membership functions of the fuzzy controller, thereby constructing the required fuzzy controller;

[0072] Step B.2: The fuzzy controller uses the second to fifth levels of the pipelined analog-to-digital converter quantization digital codes D2, D3, D4, and D5 and the corresponding scaling coefficients K. D2 K D3 K D4 K D5 The value obtained by multiplying and then summing the results is used as the input value F of the fuzzy controller. input As shown in the following formula: D2*K D2 +D3*K D3 +D4*K D4 +D5*K D5 =F input ;

[0073] Step B.3: F input The error compensation value E is obtained through fuzzy controller inference calculation. cal .

[0074] (III) Beneficial Effects

[0075] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0076] 1. The application proposes a new calibration method for pipeline analog-to-digital converter based on genetic algorithm optimized fuzzy control. The method takes the sub-stage quantization code of the pipeline as input, multiplies it with the corresponding proportional coefficient, and then superimposes to get the input value of the fuzzy controller. The error compensation value is obtained through the inference calculation of the fuzzy controller.

[0077] 2. The method takes the proportional coefficient and the membership function of the fuzzy controller as genetic operators, and obtains the optimized fuzzy controller through the selection, crossover and mutation process. The constructed fuzzy controller can effectively calibrate the error in the pipeline analog-to-digital converter.

[0078] 3. The constructed fuzzy controller adopts a single-input single-output structure, and the construction process is simple, fast and can effectively fit the nonlinearity of the error in the pipeline analog-to-digital converter.

[0079] 4. The calibration method proposed in the application has excellent calibration effect. The simulation results show that the signal-to-noise distortion ratio is improved from 54.8dB to 83.67dB, the spurious-free dynamic range is improved from 63.6dB to 105.6dB, and the effective number of bits is improved from 8.81bits to 13.60bit. BRIEF DESCRIPTION OF DRAWINGS

[0080] Figure 1 The structure diagram of the pipeline analog-to-digital converter of the application is shown in the figure;

[0081] Figure 2 The pre-constructed fuzzy controller structure is shown in the figure;

[0082] Figure 3 The input membership function of the constructed fuzzy controller is shown in the figure;

[0083] Figure 4 The output membership function of the constructed fuzzy controller is shown in the figure;

[0084] Figure 5 The output spectrum of the pipeline analog-to-digital converter to be calibrated is shown in the figure;

[0085] Figure 6 The output spectrum of the pipeline analog-to-digital converter after calibration is shown in the figure. DETAILED DESCRIPTION

[0086] The technical solutions in the embodiments of the application will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the application. Obviously, the described embodiments are only part of the embodiments of the application, not all. Based on the embodiments in the application, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the application.

[0087] This invention provides a technical solution: a fuzzy control calibration method based on genetic algorithm optimization is applied to a calibration system consisting of a reference analog-to-digital converter, a genetic algorithm optimization module, a fuzzy controller, and a calibration output unit.

[0088] Connect the pipelined analog-to-digital converter to be calibrated and the reference analog-to-digital converter to the same signal source, and test the input signal V from the same signal source. in After quantization, the M (M≥6) levels of quantized digital codes D1, D2, ..., D of the pipelined analog-to-digital converter to be calibrated are obtained. M And the actual output value D of the pipelined analog-to-digital converter to be calibrated. out1 Compared with the ideal output value D of the reference analog-to-digital converter out2 This allows us to obtain the quantization output error value E between the pipelined analog-to-digital converter to be calibrated and the reference analog-to-digital converter. error =D out2 -D out1 In a specific embodiment, the structure of the pipeline analog-to-digital converter to be calibrated is as follows: Figure 1 As shown. The pipelined analog-to-digital converter (ADC) to be calibrated is a 6-stage 14-bit structure, with quantization precision of 2.5 bits for stages 1-5 and 4 bits for the last stage. The pipelined ADC to be calibrated requires a specific signal V. in Quantization yields quantized digital codes D1, D2, D3, D4, D5, and D6. The actual output D is obtained by bitwise superposition of these quantized digital codes. out1 The reference analog-to-digital converter (ADC) is a Sigma-Delta ADC with an effective precision of 16 bits. The reference ADC also applies to signal V. in After quantization, the ideal output value D is obtained. out2 The quantization output difference (D) between the analog-to-digital converter to be calibrated and the reference analog-to-digital converter out2 -D out1 This is the quantization output error value E. error .

[0089] The genetic algorithm optimization module uses the pre-constructed fuzzy controller membership function and the proportional coefficient of the input quantization code as genetic operators, and uses the calibrated error value as the fitness function. Through the processes of selection, crossover, and mutation, the optimal operator is calculated, and finally the required fuzzy controller is built based on the optimal operator.

[0090] In this embodiment, the pre-built fuzzy controller structure is obtained through the following steps:

[0091] Step 1: The pre-built fuzzy controller adopts the Mamdani model and uses a single-input single-output structure.

[0092] Step 2: The input subset of the fuzzy controller is seven, defined as (NB, NM, NS, ZO, PS, PM, PB) respectively. The triangular membership function is used for the input of the fuzzy controller.

[0093] Step 3: The output subset of the fuzzy controller is seven, defined as (NB, NM, NS, ZO, PS, PM, PB) respectively. The triangular membership function is used for the output of the fuzzy controller.

[0094] Step 4: The fuzzy rule base is constructed as follows:

[0095] if INPUT = NB, then OUTPUT = NB;

[0096] if INPUT = NM, then OUTPUT = NM;

[0097] if INPUT = NS, then OUTPUT = NS;

[0098] if INPUT = ZO, then OUTPUT = ZO;

[0099] if INPUT = PS, then OUTPUT = PS;

[0100] if INPUT = PM, then OUTPUT = PM;

[0101] if INPUT = PB, then OUTPUT = PB;

[0102] Step 5: According to the input fuzzy subset and membership, the output fuzzy subset and membership are obtained by using the max-min composition operator.

[0103] Step 6: According to the output fuzzy subset and membership, the error compensation value is obtained by using the centroid method.

[0104] In this embodiment, the optimization process of the genetic algorithm optimization module is as follows:

[0105] Step A1: The pre-constructed fuzzy controller membership function interval value and the proportion coefficient of the input quantization code are used as genetic operators. Specific embodiment: the pre-constructed fuzzy controller structure is as shown in Figure 2 The pre-constructed fuzzy controller membership function interval value is 34, the proportion coefficient of the input quantization code is 4, and the total genetic operator is 38.

[0106] A1.1: The input minimization code is the second to fourth stage quantization digital code D2, D3, D4, D5 of the pipeline analog-to-digital converter to be calibrated, each quantization digital code is multiplied by a corresponding proportional coefficient K D2 , K D3 , K D4 , K D5 and then superimposed. Wherein K D2 , K D3 , K D4 , K D5 are optimized as genetic operators. Specific embodiments: K D2 , K D3 , K D4 , K D5 are the last four genetic operators.

[0107] A1.2: The membership functions of the pre-constructed fuzzy controller are all triangular membership functions, wherein the input and output fuzzy subsets are both seven (NB, NM, NS, ZO, PS, PM, PB). The boundaries of the NB and PB fuzzy subsets are determined, and only one end point value of the membership function needs to be optimized. When constructing the NM, NS, ZO, PS, and PM membership functions, each membership function has two boundaries and one middle end point value that needs to be optimized. Specific embodiments: as shown in the structure of the pre-constructed fuzzy controller Figure 2 The triangular membership functions are used for input and output, and the fuzzy subsets of input and output are seven. Among them, only the right end point of the membership function of the NB fuzzy subset needs to be optimized, and only the left end point of the membership function of the PB fuzzy subset needs to be optimized. For other fuzzy subsets, the positions of the left end point, middle end point, and right end point need to be optimized.

[0108] A1.3: Determine the number of genetic operators. There are 1+3*5+1=17 values of the input membership functions that need to be optimized. Similarly, there are 1+3*3+1=17 values of the output membership functions that need to be optimized, and there are 4 values of the corresponding proportional coefficients that need to be optimized. Therefore, the number of genetic operators is 38. Specific embodiments: the number of genetic operators is 17+17+4=38.

[0109] Step A2: Create a population of genetic operators. Initialize the population according to the range of each genetic operator. Specific embodiments: create a population of 300 individuals, each individual has 38 genetic factors, and initialize the population according to the range of each genetic factor.

[0110] A2.1: Determine the range of the genetic operator corresponding to the proportionality coefficient. Determine the error weight size setting corresponding to each level of quantization code through data analysis. Specific embodiment: According to the transfer characteristic of the pipeline analog-to-digital converter, the quantization output of each level has different error influence weights. Through data analysis, the error weight ranges corresponding to the second to fifth level quantization codes are [1, 2], [0, 1], [0, 1], [0, 0.1], respectively.

[0111] [0, 0.1].

[0112] A2.2: Determine the range of the genetic operator corresponding to the membership function. According to the uniformly constructed triangular membership function, give each to-be-optimized value a proper fluctuation range. Specific embodiment:

[0113] Pre-constructed fuzzy controller structure Figure 2 As shown, the value of the fuzzy subset NB is -2, in order to better exert the fitting characteristics of the fuzzy controller, the value is selected to have a left and right point fluctuation range, so the range of the right end point of NB can be set as [-2.5, -1.5]. The intervals of the membership functions of other fuzzy subsets are all selected to have a fluctuation of plus or minus 0.5.

[0114] A2.3: Initialize the population according to the range of each genetic operator.

[0115] Step A3: Calculate the fitness of each individual in the initial population, thereby obtaining the average fitness of the population, and then find the individual with the optimal fitness and save the optimal fitness value and the optimal individual in the register.

[0116] Step A3.1: According to the genetic operator of each individual, construct the corresponding proportionality coefficient, and the input and output membership functions. Specific embodiment: The first 17 genetic operators of each individual are used to construct the input membership function, the 18th to 34th genetic operators are used to construct the output membership function, and the last four genetic operators are used to construct the proportionality coefficient.

[0117] Step A3.2: Input test data, apply the fuzzy controller built by the proportionality coefficient and the membership function, and calculate the error compensation value E cal , then superimpose the D out1 of the input signal and the error compensation value E cal to obtain the calibrated output D cal , and finally superimpose the ideal output value D out2 of the input signal and the calibrated output D calThe error value after compensation is obtained. The average value of the error after compensation of the test data is calculated and used as the fitness of the individual. Embodiment: The input test data is quantized by the to-be-calibrated pipeline ADC to obtain the second to fourth quantized digital codes D2, D3, D4, and D5. The quantized codes are multiplied by K D2 , K D3 , K D4 , K D5 , respectively and then superimposed to serve as the input of the fuzzy controller. The error E cal is calculated by the fuzzy controller.

[0118] Step A3.3: The fitness value of each individual in the population is calculated, and the average fitness of the population is calculated. Embodiment: The fitness of each individual in the population is calculated, and the average fitness of the population is calculated by averaging.

[0119] Step A3.4: The individual with the minimum fitness value in the population is found, and the genetic operator and the fitness value of the individual are saved to the register.

[0120] Step A4: Chromosomes are selected using the tournament method, and the individuals in the population are updated. Embodiment: (Selection)

[0121] Step A4.1: A new population with all values being 0 is initialized.

[0122] Step A4.2: The number of individuals in the population is obtained, and the number of samples extracted is 20% of the original population. Embodiment: The number of samples extracted is 20%, which can be adjusted appropriately in different systems.

[0123] Step A4.3: 20% of the individuals in the original population are randomly selected, and the individual with the lowest fitness is selected.

[0124] Step A4.4: The individual with the lowest fitness found is retained, and the individual is copied to the new population.

[0125] Step A4.5: Steps A4.3 to A4.4 are repeated until all individuals in the new population are updated.

[0126] Step A5: The operators of the individuals in the population are crossed to obtain new individuals. Embodiment: (Crossover)

[0127] Step A5.1: The number of individuals in the population is obtained, and the individuals in the population are subjected to the following steps.

[0128] Embodiment: The number of individuals in the population is 300.

[0129] Step A5.2: A random number is generated, and the value range is (0-1). The value is the crossover probability.

[0130] Step A5.3: judge the value and the size of the set crossover value, if the value is less than the size of the set crossover value, then perform the crossover operation, perform the following steps A5.4-A5.5. Otherwise, the current individual does not cross. Specific embodiments: the size of the set crossover value is 0.7, which can be adjusted appropriately in different systems.

[0131] Step A5.4: randomly select the individual to be crossed in the population, and randomly select the node to be crossed.

[0132] Step A5.5: exchange the value of the genetic operator to be crossed in the current individual and the selected individual.

[0133] Step A6: mutate the individual operator in the population to obtain a new individual. Specific embodiments: (mutation)

[0134] Step A6.1: get the number of individuals in the population, and get how many genetic operators each individual has. Specific embodiments: the number of individuals in the population is 300, and each individual has 38 genetic operators.

[0135] Step A6.2: randomly generate a mutation probability M for each genetic operator X of each individual, and the mutation probability ranges from 0 to 1.

[0136] Step A6.3: if the randomly generated mutation probability M is less than the set mutation probability size, then mutate the genetic operator. Perform A6.4-A6.6. If not, the genetic operator does not mutate.

[0137] Specific embodiments: the size of the set mutation probability value is 0.3, which can be adjusted for different systems.

[0138] Step A6.4: generate a random number N, the value of which ranges from 0 to 1.

[0139] Step A6.5: if the random number N is less than or equal to 0.5, then the mutation value increases, and the mutated value is: X=X*(1+M); if the random number N is greater than 0.5, then the mutation value decreases, and the mutated value is: X=X*(1-M);

[0140] Step A6.6: detect whether the mutated X value exceeds the set range, if the X value exceeds the upper limit of the set range, set the X value to the upper limit of the set range; if the X value is less than the lower limit of the set range, set the X value to the lower limit of the set range.

[0141] Step A7: calculate the fitness value of each individual in the new population obtained by selection, crossover and mutation, and calculate the average fitness of the population, while finding the optimal chromosome in the population.

[0142] Step A8: compare the optimal chromosome in the population with the fitness value saved in the register, and update the value of the register.

[0143] Step A9: if the iteration is to the set number, execute step A10. Otherwise return to step A4.

[0144] Step A10: extract the optimal individual from the register, and construct the fuzzy controller according to the genetic operator value of the individual.

[0145] The fuzzy controller module is constructed using the optimal parameters. The quantized digital codes D2, D3, D4, D5 of the second to fifth stages of the pipeline analog-to-digital converter are multiplied by the respective proportional coefficients and then superimposed to obtain a value as the input of the fuzzy controller. The fuzzy controller infers an error compensation value E cal .

[0146] The input is calculated by the fuzzy controller to obtain an error compensation value E cal in the following steps:

[0147] Step B.1: according to the genetic operator obtained by genetic algorithm optimization, construct the input and output membership functions of the fuzzy controller, thereby constructing the required fuzzy controller. Specific embodiment: the constructed fuzzy controller input membership function is as shown in Figure 3 , and the output membership function is as shown in Figure 4 .

[0148] Step B.2: the fuzzy controller takes the value obtained by multiplying the quantized digital codes D2, D3, D4, D5 of the second to fifth stages of the pipeline analog-to-digital converter by the corresponding proportional coefficients K D2 , K D3 , K D4 , K D5 and then superimposing as the input value F input of the fuzzy controller. The following formula: D2*K D2 +D3*K D3 +D4*K D4 +D5*K D5 =F input . Specific embodiment: the proportional coefficients obtained by genetic algorithm optimization are 1.501, 0.746, 0.286, 0.0622 respectively. The second to fourth stage quantized codes are 2, -2, 0, 1 respectively. The input value of the fuzzy controller is obtained: 2*1.501-2*0.746+0*0.286+1*0.0622=1.5722.

[0149] Step B.3: F input is calculated by the fuzzy controller to obtain an error compensation value E calSpecific embodiment: input 1.5722, the error compensation value calculated by the constructed fuzzy controller is 0.001370.

[0150] The calibration output unit superimposes the actual output value D of the pipeline analog-to-digital converter to be calibrated and the error compensation value E calculated by the fuzzy controller constructed by the optimization algorithm to obtain a calibration output value D of the pipeline analog-to-digital converter to be calibrated. out1 The error compensation value E calculated by the fuzzy controller constructed by the optimization algorithm cal After superimposition, the calibration output value D of the pipeline analog-to-digital converter to be calibrated is obtained. cal Specific embodiment: after superimposition of the actual output value 0.18920 of the pipeline analog-to-digital converter to be calibrated and the error compensation value 0.001370 calculated by the fuzzy controller constructed by the optimization algorithm, the calibration output value of the pipeline analog-to-digital converter to be calibrated is 0.19057. The quantized output of the reference pipeline analog-to-digital converter is 0.19058. The error after calibration is only 0.00001, effectively achieving calibration.

[0151] In one specific embodiment of the present application, the method and device for analog-to-digital converter calibration are used to build a calibration system behavior level model by MATLAB and Simulink, the input is a 1GHz single frequency sine wave, the pipeline analog-to-digital converter to be calibrated is a 6-stage 14-bit structure, the quantization accuracy of stages 1-5 is 2.5 bits, and the quantization accuracy of the last stage is 4 bits. The output spectrum diagram of the analog-to-digital converter to be calibrated is shown in Figure 5 The horizontal coordinate of the image represents the signal frequency, and the vertical coordinate represents the signal amplitude.

[0152] The output spectrum diagram of the pipeline analog-to-digital converter calibrated by the fuzzy control calibrated by the genetic algorithm optimized fuzzy control is shown in Figure 6 After calibration, the SNDR is improved from 54.8dB to 83.6dB, the SFDR is improved from 63.6dB to 105.6dB, and the ENOB is improved from 8.81bits to 13.60bit.

[0153] Although embodiments of the present application have been shown and described, it will be understood by those of ordinary skill in the art that various changes, modifications, replacements and variations can be made to these embodiments without departing from the principles and spirits of the present application, and the scope of the present application is defined by the appended claims and their equivalents.

Claims

1. A method for calibrating a pipeline analog-to-digital converter based on a genetic algorithm optimization, characterized in that, Be applied to the calibration system composed of reference analog-to-digital converter, genetic algorithm optimization module, fuzzy controller and data output unit; Connect the pipelined analog-to-digital converter to be calibrated and the reference analog-to-digital converter to the same signal source, and test the input signal V from the same signal source. in After quantization, the M-level quantized digital codes D1, D2, ..., D of the pipeline analog-to-digital converter to be calibrated are obtained. M M≥6, and the actual output value D of the pipelined analog-to-digital converter to be calibrated. out1 Compared with the ideal output value D of the reference analog-to-digital converter out2 This allows us to obtain the quantization output error value E between the pipelined analog-to-digital converter to be calibrated and the reference analog-to-digital converter. error =D out2 -D out1 ; The genetic algorithm optimization module takes the pre-constructed fuzzy controller membership function and the proportional coefficient of the input quantization code as the genetic operator, and uses the calibrated error value as the fitness function, and calculates the optimal operator through the selection, crossover and mutation process, and finally builds the required fuzzy controller according to the optimal operator; The fuzzy controller module adopts the optimization parameter to construct, and uses the second to fifth stage quantization digital code D2, D3, D4, D5 of the pipeline analog-digital converter to multiply the respective proportional coefficient and then superimpose the value as the input of the fuzzy controller, and the fuzzy controller obtains the error compensation value E according to the input reasoning cal ; The calibration output unit calculates the actual output value D of the pipeline analog-to-digital converter to be calibrated out1 The error compensation value E calculated by the fuzzy controller constructed by the optimization algorithm cal After superposition, the calibration output value D of the pipeline analog-to-digital converter to be calibrated is obtained cal ; The optimization process of the genetic algorithm optimization module is obtained by the following steps: Step A1: taking the pre-constructed fuzzy controller membership function interval value and the proportional coefficient of the input quantization code as the genetic operator; Step A2: creating a genetic operator population, initializing the population according to the range of each genetic operator; Step A3: calculating the fitness of each individual in the initial population to obtain the average fitness of the population, and then finding the optimal individual and saving the optimal fitness value and the optimal individual in the register; Step A4: selecting chromosomes using the tournament method to update the individuals in the population; Step A5: crossing the individual operators in the population to obtain new individuals; Step A6: mutating the individual operators in the population to obtain new individuals; Step A7: calculating the fitness value of each individual in the new population obtained by selection, crossover and mutation, and calculating the average fitness of the population, while finding the optimal chromosome in the population; Step A8: comparing the optimal chromosome in the population with the fitness value saved in the register, and updating the value in the register; Step A9: if the iteration reaches the set number of times, execute step A10, otherwise return to step A4; Step A10: extracting the optimal individual from the register, and constructing the fuzzy controller according to the genetic operator value of the individual; The step A1 includes: A1.1: said input quantization code is a quantization digital code D2, D3, D4, D5 of the second to fourth stage of the pipeline analog-to-digital converter to be calibrated, each quantization digital code being multiplied by a corresponding scaling factor K D2 , K D3 , K D4 , K D5 and then summed, wherein K D2 , K D3 , K D4 , K D5 are optimized as genetic operators; A1.2: The pre-constructed fuzzy controller membership function is a triangular membership function, wherein the input and output fuzzy subsets are 7, respectively NB, NM, NS, ZO, PS, PM, PB; wherein the boundary of NB, PB fuzzy subset is determined, and only one end value of the membership function needs to be optimized, and when constructing NM, NS, ZO, PS, PM membership function, each membership function has two boundary and one middle end value which needs to be optimized; A1.3: determine the number of genetic operators, the input membership function has 1+3*5+1=17 values which need to be optimized, and similarly, the output membership function has 1+3*3+1=17 values which need to be optimized, and the corresponding proportional coefficient value has 4 values which need to be optimized, so the number of genetic operators is 38; The step A2 includes: A2.1: determine the range of the genetic operator corresponding to the proportional coefficient, and set the error weight size corresponding to each level of quantization code through data analysis; A2.2: determine the range of the genetic operator corresponding to the membership function, and give each optimized value a proper fluctuation range based on the uniformly constructed triangular membership function; A2.3: initialize the population according to the range of each genetic operator.

2. The calibration method of a pipeline ADC based on genetic algorithm optimization according to claim 1, characterized in that, The pre-constructed fuzzy controller structure is obtained by the following steps: Step 1: the pre-constructed fuzzy controller adopts Mamdani model, and uses single-input single-output structure; Step 2: the input subset of the fuzzy controller is seven, which is defined as NB, NM, NS, ZO, PS, PM, PB, and the triangular membership function is used for the input of the fuzzy controller; Step 3: the output subset of the fuzzy controller is seven, which is defined as NB, NM, NS, ZO, PS, PM, PB, and the triangular membership function is used for the output of the fuzzy controller; Step 4: the constructed fuzzy rule base is: if INPUT=NB, then OUTPUT=NB; if INPUT=NM, then OUTPUT=NM; if INPUT=NS, then OUTPUT=NS; if INPUT=ZO, then OUTPUT=ZO; if INPUT=PS, then OUTPUT=PS; if INPUT=PM, then OUTPUT=PM; if INPUT=PB, then OUTPUT=PB; Step 5: according to the input fuzzy subset and membership, the output fuzzy subset and membership are obtained by using the "max-min" composition operator reasoning; Step 6: according to the output fuzzy subset and membership, the error compensation value is obtained by using the centroid method to defuzzify.

3. The calibration method of a pipeline ADC based on genetic algorithm optimization according to claim 1, characterized in that, The step A3 comprises: Step A3.1: according to the genetic operator of each individual, the corresponding proportional coefficient and the membership function of input and output are constructed; Step A3.2: Input the test data, apply the fuzzy controller built using the proportional coefficient and membership function, and calculate the error compensation value E. cal Then convert the input signal D out1 With error compensation value E cal The calibrated output D is obtained by superposition. cal Finally, the ideal output value D of the input signal is... out2 With the calibrated output D cal The difference is used to obtain the compensated error value. The average compensated error of the test data is calculated and used as the fitness of the individual. Step A3.3: the fitness value of each individual in the population is calculated, and the average fitness in the population is calculated; Step A3.4: the individual with the minimum fitness value in the population is found, and the genetic operator and the fitness value of the individual are saved to the register.

4. The calibration method of a pipeline ADC based on genetic algorithm optimization according to claim 1, characterized in that, The step A4 comprises: Step A4.1: a new population with all values being 0 is initialized; Step A4.2: the number of individuals in the population is obtained, and the number of samples extracted is 20% of the original population; Step A4.3: 20% of the individuals in the original population are randomly selected, and the individual with the lowest fitness is selected; Step A4.4: the individual with the lowest fitness found is retained, and the individual is copied to the new population; Step A4.5: steps A4.3-A4.4 are repeated until all individuals in the new population are updated.

5. The calibration method of a pipeline ADC based on genetic algorithm optimization according to claim 1, characterized in that, The step A5 comprises: Step A5.1: the number of individuals in the population is obtained, and the following steps are performed on the individuals in the population; Step A5.2: a random number is generated, and the value range is (0-1), which is the crossover probability; Step A5.3: the value is compared with the set crossover value, if the value is less than the set crossover value, the crossover operation is performed, and the following steps A5.4-A5.5 are executed, otherwise the current individual does not perform crossover; Step A5.4: randomly select the individual to be crossed in the population, and randomly select the node to be crossed; Step A5.5: the values of the genetic operators of the current individual and the selected individual to be crossed are exchanged.

6. The calibration method of a pipeline ADC based on genetic algorithm optimization according to claim 1, characterized in that, The step A6 comprises: Step A6.1: Get the number of individuals in the population, get how many genetic operators each individual has; Step A6.2: Randomly generate a mutation probability M for each genetic operator X of each individual, the mutation probability ranges from 0 to 1; Step A6.3: If the randomly generated mutation probability M is less than the set mutation probability size, mutate the genetic operator, execute A6.4-A6.6; if not, the genetic operator does not mutate; Step A6.4: Generate a random number N, the value size ranges from 0 to 1; Step A6.5: If the random number N is less than or equal to 0.5, the mutation value increases, the mutated value is: X=X*(1+M); if the random number N is greater than 0.5, the mutation value decreases, the mutated value is: X=X*(1-M); Step A6.6: Detect whether the mutated X value exceeds the set range, if the X value exceeds the upper limit of the set range, set the X value to the upper limit of the set range; if the X value is less than the lower limit of the set range, set the X value to the lower limit of the set range.

7. The calibration method of a pipeline ADC based on genetic algorithm optimization according to claim 1, characterized in that, The input is calculated by a fuzzy controller to obtain an error compensation value E cal is obtained by the following steps: Step B.1: According to the genetic operator obtained by genetic algorithm optimization, construct the input and output membership functions of the fuzzy controller, and thus construct the required fuzzy controller; Step B.2: The fuzzy controller multiplies the quantized digital codes D2, D3, D4, D5 of the second to fifth stages of the pipeline analog-to-digital converter with the corresponding proportional coefficients K D2 , K D3 , K D4 , K D5 and adds the resulting values to obtain the input value F of the fuzzy controller input , as shown in the following equation: D2*K D2 + D3*K D3 + D4*K D4 + D5*K D5 = F input ; Step B.3: F input The error compensation value E is calculated by the fuzzy controller inference cal .

Citation Information

Patent Citations

  • Multi-modal data analysis method and system based on improved genetic algorithm

    CN115203631A

  • Background calibration method of pipeline analog-to-digital converter based on fuzzy control

    CN118631252A