Identification of the Specification Parameters for a Voltage Controlled Oscillator Using an Artificial Neural Network with a Genetic Algorithm

This paper presents the application of an artificial neural network with a genetic algorithm for identifying the selected specification parameters of a voltage-controlled oscillator (VCO). In modern electronics, the complexity of the production process may cause errors in analogue and mixed-signal electronic circuits, and inaccuracies in this technological process have a direct impact on the specification parameters of a VCO. The modern market requires that the production process has to be as quick as possible, and therefore testing systems should be fast and have the highest efficiency of parameter identification. In the following paper, a genetic algorithm is used to optimise the number of output signal measurement points, which allows them to be identified by the specification parameters of the VCO that are selected by an artificial neural network. The proposed method is characterised by shortening the test time of the system while maintaining a high efficiency in the identification of the selected design specification parameters.DOI: http://dx.doi.org/10.5755/j01.eie.24.6.20945


I. INTRODUCTION
Fault diagnosis of analogue circuits is an important and still relevant element for the design validation of electronic devices [1]- [5].The problem of diagnosis is complex due to the large number of process variables, which can be altered during production.
Fault diagnosis can be divided into two main sections: it includes detecting faulty circuits, locating faulty parameters and evaluating their values and determining whether a faulty parameter has drifted from its tolerance range but does not lead to any topological changes [6].
Analogue circuit testing can be divided into two categories: Fault Driven Testing (FDT), which detects faults in elements or Functional Test/Specification Driven Test (FT/SDT), where the functional behaviour of the circuit being tested is measured.In this case, the test should be designed to gather all of the possible datasheet information.However, due to the easy availability of electronic circuits and the low cost of their execution, the testing of systems is aimed at checking the design specifications in order to check their compliance with the adopted assumptions [7].
In order to speed up the launch of a product to the market, the Simulation Before Test stage methodology (SBT) has been introduced.In the SBT approach, a testing procedure is created and a circuit under test (CUT) numerical implementation is used.All of the possible parametric deviations are simulated.The desired specification parameters of CUT are calculated for all of the simulations and a fault dictionary is created.On the production line, a manufactured circuit is tested using the same procedure and the CUT response is compared with the fault dictionary [7].
Nowadays, among the multiplicity of the test algorithms, most attention has been focused on the heuristic methods, evolutionary techniques, fuzzy logic, support vector machines and artificial neural networks [1]- [9].
While most of the works have been focused on the soft fault diagnosis of analogue circuits when only one parameter is faulty, fewer papers have been directed to multiple faults [8], [10]- [18].This paper presents the use of an artificial neural network (ANN) to reduce the identification time of Voltage-Controlled Oscillator selected specification parameters.In the identification procedure (Fig. 1), the output signal samples of the generator are selected by the optimisation of the genetic algorithm (GA).The selected samples become the input for the artificial neural network.Based on the selected samples, the learned ANN determines the value of the selected specification parameters of the circuit under test (CUT).The paper is organised as follows.In Section II, a model of a CUT-Voltage Controlled Oscillator is presented and the specification parameters are introduced.Section II also raises the issue of the imperfectness of production, where the parametric faults of CUT are described.Sections III and IV are devoted to the description of the genetic algorithm (Sec.III) and the artificial neural network (Sec.IV).Finally, the last section describes the results of the research in detail.

A. A Voltage-Controlled Oscillator
Oscillator topologies are classified as tuned, ring and crystal oscillators.Tuned oscillators are implemented as LC or RC circuits.Ring oscillators are basically delay stages that are connected by positive feedback, which are easy to implement because of the simple integration of CMOS technology.LC oscillators occupy more space than their ring counterparts [19]- [21].
The circuit under test is a voltage-controlled oscillator (VCO) based on a ring oscillator topology.In the classical structure, a VCO contains the control input stage, the ring oscillator and the output buffer.The five-stage ring oscillator topology, which is based on NMOS and PMOS transistors, is presented in the Fig. 2. The purpose of a voltage-controlled oscillator (VCO) is to generate an output signal (u out i ) with an oscillation frequency that is proportional to the control voltage signal (u in i ) [22].Transistors NMOS M4 and PMOS M5 (Fig. 2) operate as inverters and create one structure of the oscillator.The inverter structure is repeated five times creating a fivestage ring oscillator.

B. Voltage-Controlled Oscillator Functional Parameters
The functional identification of a circuit under test should be focused on measuring the different characteristics of the output signal for the stimuli being tested.The selected functional parameters affect the quality of the voltagecontrolled oscillator that is produced.According to the parametric errors of a VCO structure, a functional test should contain:  a frequency (   ) response for the input signal (   ) [6],  a frequency tuning characteristic (()), which expresses the relationship between the VCO operating frequency at the tuning voltage that is applied [21],  output power (PdBm), which is measured into a 50Ω load [21],  Pulling (Pull in dBr), which describes the frequency variation in any change of the output load [21],  phase noise (  in dBc/Hz), which describes the single sideband phase noise of the oscillator.It is composed of the noise close to the flicker noise and the noise measured at a spacing of a constant value [21],  VCO gain (KVCO), which is measured in (Hz/V), which describes any change in the frequency value due to a change in the input signal voltage [21],  frequency tuning range (  ), which is the difference between the maximum and minimum output signal frequency values [21].As was mentioned above.voltage-controlled oscillator circuits are characterised by a frequency response, and therefore, it is important that the frequency of the designed generator for the applied voltage is within the desired range, therefore the circuit testing process starts with a frequency measurement ((   )) for the testing voltage signal (   ).Because the output of an oscillator is always attached to some load, which can affect the frequency of the VCO, it is also important to measure the output signal frequency as a function of the changing of the load of the CUT -Pulling of the VCO (  ).
Finally, a voltage-controlled oscillator is also characterised by an output power (

C. Production Imperfectness
As can be seen in the Fig. 2, the VCO presented in this paper is based on PMOS and NMOS transistors.Transistors can be parametrically damaged in many different ways during technological processes.The most frequent parametric damage at the production stage is a deviation of the photolithographic mask [23]- [24].This kind of error affects the parametric values of the transistor structurethe width (W) and length (L) of a channel.A change to this parameter in turn has a significant impact on the transistor specification parameters (i.e. the amplification of the transistor), which has an effect on the specification parameters of the voltage-controlled oscillator.
During computer analysis, the VCO is modelled using Spice software and the transistor fabrication process is modelled by width (W) and length (L).
The nominal values of W and L in NMOS (N) and PMOS (P) are defined , , , The transistor nominal range is represented by: where tW N , tW P , tL N , tL P are the tolerance ranges.
To analyse a large number of photolithographic mask deviations, a number of Monte Carlo analyses with uniform distributions were created (MC runs).
To increase the accuracy of the analysis of the CUT, the parametric damage to the NMOS and PMOS was divided into Y subranges.Let Y represent the width or length and   be the nominal values, the new subrange middle value   is described as , where   0.88, 0.94,1,1.06,1.12,1.18 Using the above, each   is defined // ; .

D. Simulation Profile
The aim of the proposed method presented in this paper is to identify the selected specification parameters of a VCO in case of NMOS and PMOS transistor parametric faults.For the transistors from Fig. 2, the nominal parameter represents 50 nm and was set to [24]: 0.5 , 50 , 1, 50 .
= 500 Monte Carlo analysis was generated for each simulated set, and the tolerances for each simulation was set as 3%.
At the simulation stage, four-step functions were considered: 5, for all  , the rising time (  ) was equal -  = 0.1ns.The exemplary response for transistors  3  (continuous line) and  4  (dotted line) is presented in Fig. 3.

III. GENETIC ALGORITHM
In order to solve a given optimisation problem, a genetic algorithm (GA) was used.The GA has proven to be robust and acceptably quick for problems of multi-parameter optimisation [24].However, as with all of the heuristic methods, there is no formal proof of its global convergence, and therefore no guarantee that solution that is found is definitely the optimal one [25] The classic elitist GA with the schema shown in the (Fig. 4) was used [25].In the proposed GA, the population size (PS) is constant.Each individual contains a single linear chromosome, which is a vector of genes (Vg) that is coded as bits and represents a particular solution.The length of the chromosome is a trade-off between the accuracy of the solution (bit resolution) and the processing time of the genetic algorithm.
The evolution loop is built from the following steps (Fig. 4): 1. Initializationusing random values, 2. elite individuals, where the unique individuals are saved.This step prevents the best solutions that have been found so far from being destroyed in the next genetic operations (i.e.crossover), 3. parent selection, which is based on a binary tournament.Two individuals are randomly selected (with return) from the main population.The one with the lower (better) value of fitness is copied to the population of parents, 4. reproduction (single-point crossover) is applied to the randomly selected pairs of parents and the offspring population is created, 5. the succession population of offspring replaces the old main population, 6. mutation, the negation of each gene using probability, 7. the elite is restored into the main population (randomly selected individuals are replaced in order to maintain a constant population size).A random overwrite does not introduce any evolutionary pressure, 8. the new population is evaluated and the fitness of an individual is calculated, 9. stop criterion -GA stops and returns the solution that was found after a specified number of iterations.
The proposed genetic algorithm was used to find the global minima of each of the selected specification parameters.The GA algorithm was created with the following parameters: 1. initial population as being uniformly random, 2. selection operator as a binary tournament with repetition, 3. crossover as a single-point, 4. succession: complete, 5. mutation as a uniform with a mutation probability for a single gene set to 0.01, 6. elite saving as one or more individuals with the best fitness and a unique genotype, 7. PS was set to 100 individuals, 8. size of the parent and offspring populations is equal in size to the main population, 9. stop criterion where the maximal number of generations (iterations) is equal 50.
The main optimisation goal is to reduce the testing time.This can be done by reducing the number of measurement samples (Sample) and shortening the length of the vectors of the measurement samples (   ).Each    is created by s selected indexes  from the vector Sample.In order to shorten the chromosome, a seven-bit resolution of binary vector  was selected.Then, every second index  from the vector Sample could be selected, which is sufficient.Therefore, each  is calculated as 2 1, wb    where  = () and {0,1,2, … ,127} and {1,3, … ,255}.
Each binary vector  encodes a single index .The chromosome length is calculated as    • .The progress of the genetic algorithm that was run is presented in (Fig. 6).The average fitness of the population decreased, which is the desirable behaviour.The individuals that represented bad solutions, where high performance values ≡ low fitness, died during the evolution process.The individuals that represented good solutions, where low performance values ≡ high fitness had a greater survival probability, reproduced and propagated in the population.
The generalization ability of the ANN overlap the GA elitism can be seen, e.g. in the Fig. 6, Fig. 15.Therefore, the GA progress was not significant.In such a case, the application of elitism in the GA algorithm is of a weaker importance.However, the ANN performance can even be different for exactly the same inputs (measurement samples) and the GA may work better for a different fitness function.

IV. ARTIFICIAL NEURAL NETWORK
In the presented paper, an neural network (ANN) with the genetic algorithm was used to identify the selected VCO specification parameters frequency ((   )), output power ( ) and pulling (  ) for selected stimuli).The presented ANN is described as follows { , , }, ANN in l out where in represents the ANN inputs and out represents the ANN outputs.The l variable is described as { 1,..., }, a l l N  (10) where   describes the number of neurons in the a-th layer.
The number of ANN inputs (in) depends on the number of (u out i ) samples and is equal    and the number of ANN outputs (out) depends on the number of the specification parameters to be identified and is equal   .
For the following ANN, the number s of    was set to 20 and the number of   was set to three.The presented artificial neural network has two hidden layers ( 1 ,  2 ) and the number of neurons in  1 and  2 is represented as: A bipolar sigmoid transfer function (tansig) [26] was used in all of the hidden layers.The presented artificial neural network was trained using the Levenberg-Marquardt algorithm and the mean square error was used as a performance function [26].
A data set of all of the   is represented with those selected by the GA Sample that contained: SAM = 8000 vectors, the training set Train contained TR = 5600 vectors with the corresponding output set presented as Tout and the validation set (Valid) that contained the VAL = 2400 vectors.
In the presented research, the genetic algorithm is used to provide the    for the input of an ANN, which determines the values of (   ),    and   .The diagram of the GA and ANN connection is presented in (Fig. 7).
The evaluation of each individual took three steps:  Vector    , which was created with  from the GA, permitted  1 ,  2 and  3 to be designated by ANN.The fitness function is calculated based on the identify parameters.The result of (  ) is sent back to GA.
The fitness function (  ) of each individual on the basis of which the global minimum is calculated is as follows where  1 is a performance value of (   ),  2 is a performance value of    and  3 is a performance value of   .

V. EXAMPLES
The following section presents the results of the proposed method.All of the simulations were performed on a computer with the following parameters: Intel Core i5 3.2 GHz with 8 GB RAM.
In order to compare the results that were obtained from the use of the GA with ANN, all of the samples of the output signal were first given to the input of the neural network.
All of the tests presented below were compared with each other in terms of the efficiency of identifying the selected specification parameters of the VCO, but also in terms of the artificial neural network learning time and the artificial neural network response time for a given    .

A. Case 1: All of the Samples of the Output Signal
In the first case, all of the samples from the output (   ) signal were given to the input of the ANN.This solution was characterised by the longest training time 310 s and 40 ms response time but also had the highest efficiency of  1 ,  2 and  3 (Table II).The time required to get the last    (   ) of the output signal was equal 5.67ns for   1 , equal 2.67ns for   2 , equal 1.96ns for   3 and equal 1.73ns for   4 .The lowest error value was obtained after 33 epochs (Fig. 8).
Figure 9(a) presents a change in the direction of the mean square error and Fig. 9(b) a change in the mean square error in the function of the epoch number.As has been shown below (Fig. 8), the highest efficiency of identification was obtained after 33 epochs.The gradient of the mean square error value at 33 epoch was 0.16 and the mean square error reached a value of 0.00001.As can be seen in the Fig. 10, the largest differences in mapping appear for the   parameter.The largest difference in identification occurred for the analyses contained in the    deviation of the W and L parameters.The most accurate mapping in all of the deviations of W and L occurred for the   parameter.The best mapping of all of the specification parameters was obtained for the deviation of the transistor's technological parameters by    ., with a 0.017GHz error, the worst mapping occurred for   4 , with a 0.132GHz error.

B. Case 2: Samples Proposed in the Process of Minimising the Fitness Function (𝐹 𝑓 ) Using the Genetic Algorithm
In the second case,    from the output signal that was proposed by the GA were given to the input of ANN.This solution was characterized by 17 s of training time and 14 ms of response time.The efficiency of  1 ,  2 and  3 was about 0.5 % less than in case 1 (Table IV).  4 .In this case, the lowest MSE value was reached after 106 epochs (Fig. 11).Figure 13 presents the mean mapping errors of the project specification parameter for the S u out that was proposed by the GA.As can be seen, the largest differences in the mapping for all of the Y mid occur for P dBm .As was shown at Fig. 11, the highest efficiency of identification was obtained after 106 epochs.The gradient of the mean square error value at 106 epochs was 0.13 and the mean square error reached a value of 0.00001.
The most accurate mapping for all of the deviations W and L occurred for parameter (   ).The best mapping of all of the specification parameters was obtained by    for the deviation of the transistor's technological parameters.The time required to get the last    (   ) of the output signal was equal to 5.59 ns for   1 , was equal to 2.45 ns for   2 , was equal to 1.8 ns for   3 and was equal to 1.6 ns for   4 .In this case, the lowest MSE value was reached after 346 epochs (Fig. 14).
As can be seen in Fig. 13, the highest efficiency of identification was obtained after 346 epochs.
The gradient of the mean square error value at epoch 346 was 0.23 and the mean square error reached a value of 0.00001 (Fig. 15).
where  is the last index of the    .In case 4, the    from the output signal that was proposed by the GA with the modified   were given to the input of the ANN.This solution was characterised by 10 s of training time and 13.4 ms of response time.The efficiency of  1 ,  2 and  3 about 0.5 % less than in case 1 (Table VIII).
The time required to get the last    (   ) of the output signal was equal to 5.2 ns for   1 , was equal to 2.2 ns for   2 , was equal 1.6 ns for   3 and was equal to 1.42 ns for   4 .
In this case, the lowest MSE value was reached after 157 epochs (Fig. 17).
As can be seen in Fig. 16, the highest efficiency of identification was obtained after 157 epochs.The gradient of the mean square error value at epoch 157 was 0.065 and the mean square error reached a value of 0.000001.Figure 18 shows the mean deviations from the identification of the analysed specification parameters of the CUT design specification.The maximum deviation was obtained for    for   .Table IX presents the exemplary values of p 3 that were

Fig. 7 .
Fig. 7. Schematic of the optimisation and learning process.

Fig. 8 .
Fig. 8. Dependence of the Mean-Square Error (MSE) as a function of epoch for case 1.

Fig. 9 .
Fig. 9. Direction of the error change (a), and the change of the error value (b) in the case function for case 1.

Fig. 10 .
Fig. 10.Mean error value for the analysed values of the design specification as a function of the deviation of the photolithographic mask.Blue represents   , yellow represents   and green represents   .

Fig. 11 .
Fig. 11.Dependence of the Mean Square Error (MSE) in the function of Epoch for case 2. The changing the direction of the mean square error (a) and changing mean square error in the function of the epoch number (b) are presented in the Fig. 12.

Fig. 12 .
Fig. 12. Direction of error change (a) and change of the error value (b) in the case function for case 2.

Fig. 13 .
Fig. 13.Mean error value for the analysed values of the design specification as a function of the photolithographic mask deviation.Blue represents   , yellow represents   and green represents   .

Fig. 14 .
Fig. 14.Dependence of the Mean Square Error (MSE) in the function of Epoch for case 3.

Fig. 15 .
Fig. 15.Direction of the error change (a) and change in the error value (b) in the case function for 3.

Fig. 16 .
Fig. 16.Fitness progress of the GA evolution after modified   .

Fig. 17 .
Fig. 17.Dependence of the Mean Square Error (MSE) in the function of Epoch for case 4.

Fig. 18 .
Fig. 18.Mean error value for the analysed values of the design specification as a function of the photolithographic mask deviation.Blue represents   , yellow represents   and green represents   .

TABLE II .
THE RESULTS OF ALL OF THE    THAT WERE OBTAINED FOR  OF THE ANN.

TABLE III
TableIIIpresents the exemplary the values of p 1 that were calculated by the ANN compared with the expected values.For this example, the most accurate mapping occurred for   2

TABLE IV .
THE RESULTS THAT WERE OBTAINED FOR THE S U OUT THAT WAS PROPOSED BY THE GA FOR THE  OF ANN.The time required to get the last    (   ) of the output signal was equal to 5.36 ns for   1 , was equal 2.42 ns

TABLE V .
EXEMPLARY VALUES OF THE P 1 SPECIFICATION: EXPECTED AND CALCULATED BY THE ANN.   equal to 20 random samples of   were given to the input of the ANN.This solution was characterised by 23 s of training time and 15 ms of response time.The efficiency of  1 and  3 are presented in Table VI.

TABLE VI .
THE RESULTS OBTAINED FOR S U OUT EQUAL TO 20 RANDOM SAMPLES OF U OUT FOR THE IN OF THE ANN.

TABLE VII .
EXEMPLARY VALUES OF THE P 2 SPECIFICATION: EXPECTED AND CALCULATED BY THE ANN.

Table
VII presents the exemplary values of p 2 as calculated by the ANN compared with the desired values.For this example, the most accurate mapping occurred for  1, with a 0.013 dBm error, the worst mapping occurred for  2, with a 0.111 dBm error.D. Case 4: Samples Proposed in the Process of Minimizing the Modified Fitness Function (  ) Using the Genetic AlgorithmIn this case, the fitness function (  ) was modified.The aim of the modification of the fitness function was to add an additional parameter that would allow the promotion of those solutions whose index of the last S u out was the earliest. Te new   is presented below

TABLE VIII .
THE RESULTS OBTAINED FOR THE S U OUT THAT WAS PROPOSED BY THE GA WITH THE NEW F F FOR IN OF THE ANN.