Commit a45e29d4bfc29d47738d1c85973f6d3063da62b0

Authored by jfriedt
1 parent dda4cf0c11
Exists in master

article et lettre

Showing 2 changed files with 81 additions and 41 deletions Side-by-side Diff

ifcs2018_journal.tex
... ... @@ -295,14 +295,16 @@
295 295 overestimate the rejection capability of the filter.
296 296 % Furthermore, the losses within
297 297 % the passband are not considered and might be excessive for excessively wide transitions widths introduced for filters with few coefficients.
298   -{\color{red} In intermediate criterion considered the minimal rejection within the stopband, to which the sum of the absolute values
  298 +{\color{red} An intermediate criterion considered the maximal rejection within the stopband, to which the sum of the absolute values
  299 +% JMF : je fais le choix de remplacer minimal par maximal rejection pour etre coherent avec caption de Fig custom_criterion mais surtout parceque
  300 +% rejection me semble plus convaincant si on la maximise (il me semble que -120 dB de S21 signifie 120 dB de rejection donc on veut maximiser)
299 301 within the passband is subtracted to avoid filters with excessive ripples, normalized to the
300 302 bin width to remain consistent with the passband criterion (dBc/Hz units in all cases).
301   -In this case, when we cascaded too filters with a excessive deviation in passband ($>$ 1~dB),
302   -the final deviation in passband may be too considerable ($>$ 10~dB). Hence our final
303   -criterion always take the minimal rejection in stopband but we substract the maximal
304   -amplitude in passband (maximum value minus the minimum value). If this amplitude is
305   -greater than 1~dB, we discard the filter.}
  303 +In this case, cascading too many filters with individual excessive ($>$ 1~dB) passband ripples
  304 +led to unacceptable ($>$ 10~dB) final ripple levels, especially close to the transition band.
  305 +Hence, the final criterion considers the minimal rejection in the stopband to which the
  306 +the maximal amplitude in the passband (maximum value minus the minimum value) is substracted, with
  307 +a 1~dB threshold on the latter quantity over which the filter is discarded.}
306 308 % Our final criterion to compute the filter rejection considers
307 309 % % r2.8 et r2.2 r2.3
308 310 % the minimal rejection within the stopband, to which the sum of the absolute values
... ... @@ -311,7 +313,7 @@
311 313 With this
312 314 criterion, we meet the expected rejection capability of low pass filters as shown in figure~\ref{fig:custom_criterion}.
313 315 {\color{red} The best filter has a correct rejection estimation and the worst filter
314   -is discarded.} % AH 20191609: Utile ?
  316 +is discarded based on the excessive passband ripple criterion.}
315 317  
316 318 % \begin{figure}
317 319 % \centering
... ... @@ -323,9 +325,9 @@
323 325 \begin{figure}
324 326 \centering
325 327 \includegraphics[width=\linewidth]{images/custom_criterion}
326   -\caption{\color{red}Custom criterion (maximum rejection in the stopband minus the maximal
327   -amplitude in passband (if $>$ 1~dB the filter is discarded) rejection normalized to the bandwidth)
328   -comparison between monolithic filter and cascaded filters}
  328 +\caption{\color{red}Selected filter qualification criterion computed as the maximum rejection in the stopband
  329 +minus the maximal ripple amplitude in the passband with a $>$ 1~dB threshold above which the filter is discarded:
  330 +comparison between monolithic filter (blue, rejected in this case) and cascaded filters (red).}
329 331 \label{fig:custom_criterion}
330 332 \end{figure}
331 333  
332 334  
... ... @@ -335,14 +337,19 @@
335 337 The curve shaped as a pyramid exhibits optimum configurations sets at the vertex where both edges meet.
336 338 Indeed for a given number of coefficients, increasing the number of bits over the edge will not improve the rejection.
337 339 Conversely when setting the a given number of bits, increasing the number of coefficients will not improve
338   -the rejection. Hence the best coefficient set are on the vertex of the pyramid.
  340 +the rejection. Hence the best coefficient set are on the vertex of the pyramid. {\color{red} Notice that the word length
  341 +and number of coefficients do not start at 1: filters with too few coefficients or too little tap word size are rejected
  342 +by the excessive ripple constraint of the criterion. Hence, the size of the pyramid is significantly reduced by discarding
  343 +these filters and so is the solution search space.} % ajout JMF
339 344  
340 345 \begin{figure}
341 346 \centering
342 347 \includegraphics[width=\linewidth]{images/rejection_pyramid}
343 348 \caption{\color{red}Filter rejection as a function of number of coefficients and number of bits
344 349 : this lookup table will be used to identify which filter parameters -- number of bits
345   -representing coefficients and number of coefficients -- best match the targeted transfer function.}
  350 +representing coefficients and number of coefficients -- best match the targeted transfer function. {\color{red}Filters
  351 +with fewer than 10~taps or with coefficients coded on fewer than 5~bits are discarded due to excessive
  352 +ripples in the passband.}} % ajout JMF
346 353 \label{fig:rejection_pyramid}
347 354 \end{figure}
348 355  
... ... @@ -621,7 +628,7 @@
621 628 by a Pseudo Random Number (PRN) generator, which fixes the input data size $\Pi^I$.
622 629 Then the total silicon area $\mathcal{A}$ has been fixed to either 500, 1000 or 1500
623 630 arbitrary units. Hence, the three cases have been named: MAX/500, MAX/1000, MAX/1500.
624   -The number of configurations $p$ is \color{1133}, with $C_i$ ranging from 3 to 60 and $\pi^C$
  631 +The number of configurations $p$ is {\color{red}1133}, with $C_i$ ranging from 3 to 60 and $\pi^C$
625 632 ranging from 2 to 22. In each case, the quadratic program has been able to give a
626 633 result up to five stages ($n = 5$) in the cascaded filter.
627 634  
... ... @@ -693,9 +700,9 @@
693 700  
694 701 % From these tables, we can first state that the more stages are used to define
695 702 % the cascaded FIR filters, the better the rejection.
696   -{\color{red} From these tables, we can first state that we reach an optimal solution
697   -for each case : $n = 3$ for MAX/500 and $n = 4$ for MAX/1000 and MAX/1500. Moreover
698   -the cascade filters always are better than monolithic solution.}
  703 +{\color{red} By analyzing these tables, we can first state that we reach an optimal solution
  704 +for each case : $n = 3$ for MAX/500, and $n = 4$ for MAX/1000 and MAX/1500. Moreover
  705 +the cascaded filters always exhibit better performance than the monolithic solution.}
699 706 It was an expected result as it has
700 707 been previously observed that many small filters are better than
701 708 a single large filter \cite{lim_1988, lim_1996, young_1992}, despite such conclusions
... ... @@ -857,10 +864,10 @@
857 864 As expected, the computation time seems to rise exponentially with the number of stages.
858 865 When the area is limited, the design exploration space is more limited and the solver is able to
859 866 find an optimal solution faster.
860   -{\color{red} We can also notice that the solution with $n$ greater than the optimal $n$
861   -take more time than the optimal one. This can be explain since the search space is
862   -more important and we need more time to ensure that the previous solution (from the
863   -smaller value of $n$) still the optimal solution.}
  867 +{\color{red} We also notice that the solution with $n$ greater than the optimal value
  868 +takes more time to be found than the optimal one. This can be explained since the search space is
  869 +larger and we need more time to ensure that the previous solution (from the
  870 +smaller value of $n$) still remains the optimal solution.}
864 871  
865 872 \subsection{Minimizing resource occupation at fixed rejection}\label{sec:fixed_rej}
866 873  
... ... @@ -962,7 +969,7 @@
962 969 individual filter rejection. The only exception is for the monolithic case ($n = 1$) in
963 970 MIN/100: no solution is found for a single monolithic filter reach a 100~dB rejection.
964 971 Furthermore, the area of the monolithic filter is twice as big as the two cascaded filters
965   -{\color{red}(675 and 1131 arbitrary units v.s 990 and 1760 arbitrary units for 60 and 80~dB rejection}
  972 +{\color{red}(675 and 1131 arbitrary units v.s 990 and 1760 arbitrary units for 60 and 80~dB rejection}
966 973 respectively). More generally, the more filters are cascaded, the lower the occupied area.
967 974  
968 975 Like in previous section, the solver chooses always a little filter as first
... ... @@ -973,7 +980,7 @@
973 980  
974 981 {\color{red} For each case, we found an optimal solution with $n < 5$: for MIN/40 $n=2$,
975 982 for MIN/60 and MIN/80 $n = 3$ and for MIN/100 $n = 4$. In all cases, the solutions
976   -when $n$ is greater than the optimal $n$ they remain identical to the optimal one.}
  983 +when $n$ is greater than this optimal $n$ remain identical to the optimal one.}
977 984 % For the specific case of MIN/40 for $n = 5$ the solver has determined that the optimal
978 985 % number of filters is 4 so it did not chose any configuration for the last filter. Hence this
979 986 % solution is equivalent to the result for $n = 4$.
... ... @@ -1122,7 +1129,7 @@
1122 1129 The time needed to solve this configuration is significantly shorter than the time
1123 1130 needed in the previous section. Indeed the worst time in this case is only {\color{red}5~minutes,
1124 1131 compared to 13~hours} in the previous section: this problem is more easily solved than the
1125   -previous one.
  1132 +previous one.
1126 1133  
1127 1134 To conclude, we compare our monolithic filters with the FIR Compiler provided by
1128 1135 Xilinx in the Vivado software suite (v.2018.2). For each experiment we use the
... ... @@ -1173,6 +1180,11 @@
1173 1180 such filters. The FPGA design that is produced automatically by the proposed
1174 1181 workflow is able to filter an input signal as expected, validating experimentally our model and our approach.
1175 1182 The quadratic program can be adapted it to an other problem based on assembling skeleton blocks.
  1183 +
  1184 +{\color{red}Considering that all area and rejection considerations could be explored within a reasonable
  1185 +computation duration, and that no improvement is observed when cascading more than four filters, we
  1186 +consider that this particular problem has been exhaustively investigated and optimal solutions found
  1187 +in all cases.} % JMF
1176 1188  
1177 1189 A perspective is to model and add the decimators to the processing chain to have a classical
1178 1190 FIR filter and decimator. The impact of the decimator is not trivial, especially in terms of silicon
ifcs2018_journal_reponse2.tex
... ... @@ -3,13 +3,14 @@
3 3 % TITLE: Filter optimization for real time digital processing of radiofrequency signals: application to oscillator metrology
4 4 % AUTHOR(S): HUGEAT, Arthur; BERNARD, Julien; Goavec-Mérou, Gwenhaël; Bourgeois, Pierre-Yves; Friedt, Jean-Michel
5 5  
6   -\documentclass[a4paper]{article}
  6 +\documentclass[a4paper,8pt]{article}
7 7 \usepackage[english]{babel}
8 8 \usepackage{fullpage,graphicx,amsmath, subcaption}
  9 +\pagestyle{empty}
9 10 \begin{document}
10 11 \begin{center}
11 12 {\bf\Large
12   -Rebuttal letter to the review #2 of the manuscript entitled
  13 +Rebuttal letter to the review \#2 of the manuscript entitled\\
13 14  
14 15 ``Filter optimization for real time digital processing of radiofrequency
15 16 signals: application to oscillator metrology''
16 17  
17 18  
18 19  
... ... @@ -22,27 +23,54 @@
22 23 % REVIEWERS' COMMENTS:
23 24 % Reviewer: 1
24 25 %
25   -% Comments to the Author
26   -% The Authors have implemented all Reviewers’ remarks except the one related to the criterion that, in my opinion, is the most important one. By considering ``the minimal rejection within the stopband, to which the sum of the absolute values within the passband is subtracted to avoid filters with excessive ripples, normalized to the bin width to remain consistent with the passband criterion (dBc/Hz units in all cases)'' (please, find a way to state criterions more clearly), the Authors get filters with very different behaviors in pass band and, consequently, their comparison loses its meaning.
27   -% In practice, the Authors use a good method based on a bad criterion, and this point weakens a lot the results they present.
28   -% In phase noise metrology, the target is an uncertainty of 1 dB, even less. In this regard, I would personally use a maximum ripple in pass band of 1 dB (or less), while, in some cases, the filters presented in the Manuscript exceed 10 dB of ripple, which is definitely too much.
29   -% The Authors seem to be reactive in redoing the measures and it does not seem a big problem for them to re-run the analysis with a better criterion. The article would gain a lot, because, in addition to the methodology, the reader could understand if it is actually better to put a cascade of small filters rather than a single large filter that is an interesting point.
30   -% To help the Authors in finding a better criterion (``…finding a better criterion to avoid the ripples in the passband is challenging...''), in addition to the minimum rejection in stop band, I suggest to specify also the maximum ripple in pass band as it is done, for example, in fig. 4.10, pg. 146 of Crochierie R. E. and Rabiner L. R. (1983) ``Multirate Digital Signal Processing'', Prentice-Hall (see attach). This suggestion, in practice, specify the maximum allowed deviation from the transfer function modulus of an ideal filter: 1 in pass band and 0 in stop band. As a result, it should solve one of the Authors’ concerns: ``Selecting a strong constraint such as the sum of absolute values in the passband is too selective because it considers all frequency bins in the passband while the stopband criterion is limited to a single bin at which rejection is poorest…'' since both pass and stop bands are considered in the same way.
31   -%
32   -% I understand that the Manuscript is devoted to present a methodology (``In this article we focus on the methodology, so even if our criterion could be improved, our methodology still remains and works independently of rejection criterion.''). Please, remember that a methodology is a solution to a class of problems and the example chosen to present the methodology plays a key role in showing to the reader if the method is valid or not. Here the example problem is represented by the synthesis of a decimation filter to be used in phase noise metrology. Many of the filters presented by the Authors in figures 9 and 10 as the output of this methodology are not suitable to be used in this context, since, for example, some of them have an attenuation as high as 50 dB in DC (!) that poses severe problems in interpreting the phase noise power spectral densities. What is the cause of this fail? The methodology or the criterion?
33   -
  26 +\vfill
34 27 {\bf
  28 +\noindent
  29 +Comments to the Author
  30 +
  31 + The Authors have implemented all Reviewers’ remarks except the one related to the criterion that, in my opinion, is the most important one. By considering ``the minimal rejection within the stopband, to which the sum of the absolute values within the passband is subtracted to avoid filters with excessive ripples, normalized to the bin width to remain consistent with the passband criterion (dBc/Hz units in all cases)'' (please, find a way to state criterions more clearly), the Authors get filters with very different behaviors in pass band and, consequently, their comparison loses its meaning.
  32 +
  33 + In practice, the Authors use a good method based on a bad criterion, and this point weakens a lot the results they present.
  34 +
  35 + In phase noise metrology, the target is an uncertainty of 1 dB, even less. In this regard, I would personally use a maximum ripple in pass band of 1 dB (or less), while, in some cases, the filters presented in the Manuscript exceed 10 dB of ripple, which is definitely too much.
  36 +
  37 + The Authors seem to be reactive in redoing the measures and it does not seem a big problem for them to re-run the analysis with a better criterion. The article would gain a lot, because, in addition to the methodology, the reader could understand if it is actually better to put a cascade of small filters rather than a single large filter that is an interesting point.
  38 +
  39 + To help the Authors in finding a better criterion (``...finding a better criterion to avoid the ripples in the passband is challenging...''), in addition to the minimum rejection in stop band, I suggest to specify also the maximum ripple in pass band as it is done, for example, in fig. 4.10, pg. 146 of Crochierie R. E. and Rabiner L. R. (1983) ``Multirate Digital Signal Processing'', Prentice-Hall (see attach). This suggestion, in practice, specify the maximum allowed deviation from the transfer function modulus of an ideal filter: 1 in pass band and 0 in stop band. As a result, it should solve one of the Authors’ concerns: ``Selecting a strong constraint such as the sum of absolute values in the passband is too selective because it considers all frequency bins in the passband while the stopband criterion is limited to a single bin at which rejection is poorest…'' since both pass and stop bands are considered in the same way.
  40 +
  41 + I understand that the Manuscript is devoted to present a methodology (``In this article we focus on the methodology, so even if our criterion could be improved, our methodology still remains and works independently of rejection criterion.''). Please, remember that a methodology is a solution to a class of problems and the example chosen to present the methodology plays a key role in showing to the reader if the method is valid or not. Here the example problem is represented by the synthesis of a decimation filter to be used in phase noise metrology. Many of the filters presented by the Authors in figures 9 and 10 as the output of this methodology are not suitable to be used in this context, since, for example, some of them have an attenuation as high as 50 dB in DC (!) that poses severe problems in interpreting the phase noise power spectral densities. What is the cause of this fail? The methodology or the criterion?
  42 +
35 43 In my opinion, it is mandatory to correct the criterion and to re-run the analysis for checking if the methodology works properly or not.
36 44 In the end, I suggest to publish the Manuscript After Minor Revisions.
37 45 }
38 46  
39   -We have change our criterion to be more selective in passband. Now, when the filter response
40   -exceed 1~dB in the passband, we discard the filter. We have re-run all experimentation
41   -and we have updated the dataset and our conclusion. The methodology provide the
42   -same results but since we have less filters we found the optimal solution earlier.
43   -Our argumentation about the needed time to compute the optimal solution is not so
44   -valid anymore since we need less time but we can also see that for biggest cases
45   -we need more time.
  47 +\noindent
  48 +Our answer:
46 49  
  50 +We are grateful for the opportunity provided by the reviewer to implement the constructive
  51 +comment provided in the review. Indeed we have thoroughly reviewed our investigation by implementing
  52 +a threshold criterion on the ripple level in the passband of the filters considered in the analysis.
  53 +By selecting a 1~dB maximum ripple level in the passband, the transfer functions indeed
  54 +closely match the targeted shape, as expected from an optimization analysis. The conclusion
  55 +of the initial paper are not changed but the numerical values of all tables as well as all figures
  56 +have been updated accordingly, as highlighted in red in the submitted manuscript. All
  57 +datasets have been re-computed with the updated criterion.
  58 +
  59 +While the methodology provides the same results as proposed in the initial manuscript,
  60 +a significant fraction of the initial filter set is discarded by the hard threshold rejection
  61 +criterion, thus reducing the search space and hence reducing the search time. The conclusion
  62 +about the computation duration has been updated accordingly since on the one hand all possible
  63 +filter combinations could now be analyzed, and a maximum number of four cascaded filters meets
  64 +the optimum solution with no additional improvement when adding a fifth stage. Hence, the search
  65 +is now exhaustive for solving the considered problem. Such a statement has been added in the
  66 +conclusion
  67 +
  68 +The DC component cancellation was an erroneous analysis of the filter transfer function when normalizing
  69 +the output power to the input power: removing the DC component erroneously led to this unexpected
  70 +drop of the filter transfer function close to 0~Hz. All charts have been updated accordingly
  71 +after correcting for this mistake.
  72 +\vfill
  73 +\hfill{\mbox{Yours sincerely, A. Hugeat}
  74 +\vfill
47 75 \end{document}