Commit 7c951bd35e5df9b0ee5b1c9c8683eaa0ea9478e6
1 parent
4d905253d9
Exists in
master
Typo + texte en noir.
Showing 1 changed file with 51 additions and 59 deletions Side-by-side Diff
ifcs2018_journal.tex
| ... | ... | @@ -120,10 +120,10 @@ |
| 120 | 120 | signals, High Level Synthesis (HLS) languages \cite{kasbah2008multigrid} are not considered but |
| 121 | 121 | the problem is tackled at the Very-high-speed-integrated-circuit Hardware Description Language |
| 122 | 122 | (VHDL) level. |
| 123 | -{\color{red}Since latency is not an issue in a openloop phase noise characterization instrument, | |
| 123 | +Since latency is not an issue in a openloop phase noise characterization instrument, | |
| 124 | 124 | the large |
| 125 | 125 | numbre of taps in the FIR, as opposed to the shorter Infinite Impulse Response (IIR) filter, |
| 126 | -is not considered as an issue as would be in a closed loop system.} % r2.4 | |
| 126 | +is not considered as an issue as would be in a closed loop system. | |
| 127 | 127 | |
| 128 | 128 | The coefficients are classically expressed as floating point values. However, this binary |
| 129 | 129 | number representation is not efficient for fast arithmetic computation by an FPGA. Instead, |
| ... | ... | @@ -144,9 +144,9 @@ |
| 144 | 144 | relation between number of fiter taps and quantization, Fig. \ref{float_vs_int} exhibits |
| 145 | 145 | a 128-coefficient FIR bandpass filter designed using floating point numbers (blue). Upon |
| 146 | 146 | quantization on 6~bit integers, 60 of the 128~coefficients in the beginning and end of the |
| 147 | -taps become null, {\color{red}making the large number of coefficients irrelevant: processing | |
| 148 | -resources % r1.1 | |
| 149 | -are hence saved by shrinking the filter length.} This tradeoff aimed at minimizing resources | |
| 147 | +taps become null, making the large number of coefficients irrelevant: processing | |
| 148 | +resources | |
| 149 | +are hence saved by shrinking the filter length. This tradeoff aimed at minimizing resources | |
| 150 | 150 | to reach a given rejection level, or maximizing out of band rejection for a given computational |
| 151 | 151 | resource, will drive the investigation on cascading filters designed with varying tap resolution |
| 152 | 152 | and tap length, as will be shown in the next section. Indeed, our development strategy closely |
| 153 | 153 | |
| ... | ... | @@ -163,11 +163,11 @@ |
| 163 | 163 | Our objective is to develop a new methodology applicable to any Digital Signal Processing (DSP) |
| 164 | 164 | chain obtained by assembling basic processing blocks, with hardware and manufacturer independence. |
| 165 | 165 | Achieving such a target requires defining an abstract model to represent some basic properties |
| 166 | -of DSP blocks such as perfomance (i.e. rejection or ripples in the bandpass for filters) and | |
| 166 | +of DSP blocks such as performance (i.e. rejection or ripples in the bandpass for filters) and | |
| 167 | 167 | resource occupation. These abstract properties, not necessarily related to the detailed hardware |
| 168 | 168 | implementation of a given platform, will feed a scheduler solver aimed at assembling the optimum |
| 169 | 169 | target, whether in terms of maximizing performance for a given arbitrary resource occupation, or |
| 170 | -minimizing resource occupation for a given perfomance. In our approach, the solution of the | |
| 170 | +minimizing resource occupation for a given performance. In our approach, the solution of the | |
| 171 | 171 | solver is then synthesized using the dedicated tool provided by each platform manufacturer |
| 172 | 172 | to assess the validity of our abstract resource occupation indicator, and the result of running |
| 173 | 173 | the DSP chain on the FPGA allows for assessing the performance of the scheduler. We emphasize |
| 174 | 174 | |
| 175 | 175 | |
| 176 | 176 | |
| 177 | 177 | |
| ... | ... | @@ -184,24 +184,23 @@ |
| 184 | 184 | |
| 185 | 185 | Addressing only two operations allows for demonstrating the methodology but should not be |
| 186 | 186 | considered as a limitation of the framework which can be extended to assembling any number |
| 187 | -of skeleton blocks as long as perfomance and resource occupation can be determined. {\color{red} | |
| 187 | +of skeleton blocks as long as performance and resource occupation can be determined. | |
| 188 | 188 | Hence, |
| 189 | -in this paper we will apply our methodology on simple DSP chains: a white noise input signal % r1.2 | |
| 189 | +in this paper we will apply our methodology on simple DSP chains: a white noise input signal | |
| 190 | 190 | is generated using a Pseudo-Random Number (PRN) generator or by sampling a wideband (125~MS/s) |
| 191 | -14-bit Analog to Digital Converter (ADC) loaded by a 50~$\Omega$ resistor.} Once samples have been | |
| 191 | +14-bit Analog to Digital Converter (ADC) loaded by a 50~$\Omega$ resistor. Once samples have been | |
| 192 | 192 | digitized at a rate of 125~MS/s, filtering is applied to qualify the processing block performance -- |
| 193 | 193 | practically meeting the radiofrequency frontend requirement of noise and bandwidth reduction |
| 194 | 194 | by filtering and decimating. Finally, bursts of filtered samples are stored for post-processing, |
| 195 | 195 | allowing to assess either filter rejection for a given resource usage, or validating the rejection |
| 196 | 196 | when implementing a solution minimizing resource occupation. |
| 197 | 197 | |
| 198 | -{\color{red} | |
| 199 | -The first step of our approach is to model the DSP chain. Since we aim at only optimizing % r1.3 | |
| 198 | +The first step of our approach is to model the DSP chain. Since we aim at only optimizing | |
| 200 | 199 | the filtering part of the signal processing chain, we have not included the PRN generator or the |
| 201 | 200 | ADC in the model: the input data size and rate are considered fixed and defined by the hardware. |
| 202 | 201 | The filtering can be done in two ways, either by considering a single monolithic FIR filter |
| 203 | 202 | requiring many coefficients to reach the targeted noise rejection ratio, or by |
| 204 | -cascading multiple FIR filters, each with fewer coefficients than found in the monolithic filter.} | |
| 203 | +cascading multiple FIR filters, each with fewer coefficients than found in the monolithic filter. | |
| 205 | 204 | |
| 206 | 205 | After each filter we leave the possibility of shifting the filtered data to consume |
| 207 | 206 | less resources. Hence in the case of cascaded filter, we define a stage as a filter |
| 208 | 207 | |
| ... | ... | @@ -245,12 +244,12 @@ |
| 245 | 244 | transfer function. |
| 246 | 245 | Comparing the performance between FIRs requires however defining a unique criterion. As shown in figure~\ref{fig:fir_mag}, |
| 247 | 246 | the FIR magnitude exhibits two parts: we focus here on the transitions width and the rejection rather than on the |
| 248 | -bandpass ripples as emphasized in \cite{lim_1988,lim_1996}. {\color{red}Throughout this demonstration, | |
| 247 | +bandpass ripples as emphasized in \cite{lim_1988,lim_1996}. Throughout this demonstration, | |
| 249 | 248 | we arbitrarily set a bandpass of 40\% of the Nyquist frequency and a bandstop from 60\% |
| 250 | 249 | of the Nyquist frequency to the end of the band, as would be typically selected to prevent |
| 251 | 250 | aliasing before decimating the dataflow by 2. The method is however generalized to any filter |
| 252 | -shape as long as it is defined from the initial modelling steps: Fig. \ref{fig:rejection_pyramid} | |
| 253 | -as described below is indeed unique for each filter shape.} | |
| 251 | +shape as long as it is defined from the initial modeling steps: Fig. \ref{fig:rejection_pyramid} | |
| 252 | +as described below is indeed unique for each filter shape. | |
| 254 | 253 | |
| 255 | 254 | \begin{figure} |
| 256 | 255 | \begin{center} |
| 257 | 256 | |
| 258 | 257 | |
| 259 | 258 | |
| ... | ... | @@ -290,17 +289,17 @@ |
| 290 | 289 | \label{fig:fir_mag} |
| 291 | 290 | \end{figure} |
| 292 | 291 | |
| 293 | -In the transition band, the behavior of the filter is left free, we only {\color{red}define} the passband and the stopband characteristics. | |
| 292 | +In the transition band, the behavior of the filter is left free, we only define the passband and the stopband characteristics. | |
| 294 | 293 | % r2.7 |
| 295 | -{\color{red}Initial considered criteria include the mean value of the stopband rejection which yields unacceptable results since notches | |
| 296 | -overestimate the rejection capability of the filter.} | |
| 294 | +Initial considered criteria include the mean value of the stopband rejection which yields unacceptable results since notches | |
| 295 | +overestimate the rejection capability of the filter. | |
| 297 | 296 | % Furthermore, the losses within |
| 298 | 297 | % the passband are not considered and might be excessive for excessively wide transitions widths introduced for filters with few coefficients. |
| 299 | 298 | Our final criterion to compute the filter rejection considers |
| 300 | 299 | % r2.8 et r2.2 r2.3 |
| 301 | -the {\color{red}minimal} rejection within the stopband, to which the {\color{red}sum of the absolute values | |
| 300 | +the minimal rejection within the stopband, to which the sum of the absolute values | |
| 302 | 301 | within the passband is subtracted to avoid filters with excessive ripples, normalized to the |
| 303 | -bin width to remain consistent with the passband criterion (dBc/Hz units in all cases)}. With this | |
| 302 | +bin width to remain consistent with the passband criterion (dBc/Hz units in all cases). With this | |
| 304 | 303 | criterion, we meet the expected rejection capability of low pass filters as shown in figure~\ref{fig:custom_criterion}. |
| 305 | 304 | |
| 306 | 305 | % \begin{figure} |
| ... | ... | @@ -313,8 +312,8 @@ |
| 313 | 312 | \begin{figure} |
| 314 | 313 | \centering |
| 315 | 314 | \includegraphics[width=\linewidth]{images/colored_custom_criterion} |
| 316 | -\caption{Custom criterion (maximum rejection in the stopband minus the {\color{red} sum of the | |
| 317 | -absolute values of the passband rejection normalized to the bandwidth}) | |
| 315 | +\caption{Custom criterion (maximum rejection in the stopband minus the sum of the | |
| 316 | +absolute values of the passband rejection normalized to the bandwidth) | |
| 318 | 317 | comparison between monolithic filter and cascaded filters} |
| 319 | 318 | \label{fig:custom_criterion} |
| 320 | 319 | \end{figure} |
| ... | ... | @@ -330,9 +329,9 @@ |
| 330 | 329 | \begin{figure} |
| 331 | 330 | \centering |
| 332 | 331 | \includegraphics[width=\linewidth]{images/rejection_pyramid} |
| 333 | -\caption{{\color{red}{Filter}} rejection as a function of number of coefficients and number of bits | |
| 334 | -{\color{red}: this lookup table will be used to identify which filter parameters -- number of bits | |
| 335 | -representing coefficients and number of coefficients -- best match the targeted transfer function.}} | |
| 332 | +\caption{Filter rejection as a function of number of coefficients and number of bits | |
| 333 | +: this lookup table will be used to identify which filter parameters -- number of bits | |
| 334 | +representing coefficients and number of coefficients -- best match the targeted transfer function.} | |
| 336 | 335 | \label{fig:rejection_pyramid} |
| 337 | 336 | \end{figure} |
| 338 | 337 | |
| 339 | 338 | |
| 340 | 339 | |
| 341 | 340 | |
| 342 | 341 | |
| 343 | 342 | |
| 344 | 343 | |
| ... | ... | @@ -346,32 +345,30 @@ |
| 346 | 345 | Hence when summing the transfer functions, the resulting rejection shown as the dashed yellow line is improved |
| 347 | 346 | with respect to a basic sum of the rejection criteria shown as a the dotted yellow line. |
| 348 | 347 | % r2.9 |
| 349 | -Thus, estimating the rejection of filter cascades is more complex than {\color{red}taking} the sum of all the rejection | |
| 350 | -criteria of each filter. However since the {\color{red}individual filter rejection} sum underestimates the rejection capability of the cascade, | |
| 348 | +Thus, estimating the rejection of filter cascades is more complex than taking the sum of all the rejection | |
| 349 | +criteria of each filter. However since the individual filter rejection sum underestimates the rejection capability of the cascade, | |
| 351 | 350 | % r2.10 |
| 352 | -this upper bound is considered as a {\color{red}conservative} and acceptable criterion for deciding on the suitability | |
| 351 | +this upper bound is considered as a conservative and acceptable criterion for deciding on the suitability | |
| 353 | 352 | of the filter cascade to meet design criteria. |
| 354 | 353 | |
| 355 | 354 | \begin{figure} |
| 356 | 355 | \centering |
| 357 | 356 | \includegraphics[width=\linewidth]{images/cascaded_criterion} |
| 358 | -\caption{{\color{red}Transfer function of individual filters and after cascading} the two filters, | |
| 359 | -{\color{red}demonstrating that the selected criterion of maximum rejection in the bandstop (horizontal | |
| 357 | +\caption{Transfer function of individual filters and after cascading the two filters, | |
| 358 | +demonstrating that the selected criterion of maximum rejection in the bandstop (horizontal | |
| 360 | 359 | lines) is met. Notice that the cascaded filter has better rejection than summing the bandstop |
| 361 | -maximum of each individual filter.} | |
| 360 | +maximum of each individual filter. | |
| 362 | 361 | } |
| 363 | 362 | \label{fig:sum_rejection} |
| 364 | 363 | \end{figure} |
| 365 | 364 | |
| 366 | -% r2.6 | |
| 367 | -{\color{red} | |
| 368 | 365 | Finally in our case, we consider that the input signal are fully known. The |
| 369 | 366 | resolution of the input data stream are fixed and still the same for all experiments |
| 370 | -in this paper.} | |
| 367 | +in this paper. | |
| 371 | 368 | |
| 372 | 369 | Based on this analysis, we address the estimate of resource consumption (called |
| 373 | 370 | % r2.11 |
| 374 | -silicon area -- in the case of FPGAs {\color{red}this means} processing cells) as a function of | |
| 371 | +silicon area -- in the case of FPGAs this means processing cells) as a function of | |
| 375 | 372 | filter characteristics. As a reminder, we do not aim at matching actual hardware |
| 376 | 373 | configuration but consider an arbitrary silicon area occupied by each processing function, |
| 377 | 374 | and will assess after synthesis the adequation of this arbitrary unit with actual |
| ... | ... | @@ -415,7 +412,6 @@ |
| 415 | 412 | $\pi_i^S \leq \pi_i^- + \pi_i^C - 1 - \sum_{k=1}^{i} \left(1 + \frac{r_j}{6}\right)$. |
| 416 | 413 | Finally, equation~\ref{eq:init} gives the number of bits of the global input. |
| 417 | 414 | |
| 418 | -{\color{red} | |
| 419 | 415 | This model is non-linear since we multiply some variable with another variable |
| 420 | 416 | and it is even non-quadratic, as the cost function $F$ does not have a known |
| 421 | 417 | linear or quadratic expression. To linearize this problem, we introduce $p$ FIR configurations. |
| ... | ... | @@ -437,7 +433,6 @@ |
| 437 | 433 | for each configurations thanks to the rejection criterion. We also define the binary |
| 438 | 434 | variable $\delta_{ij}$ that has value 1 if stage~$i$ is in configuration~$j$ |
| 439 | 435 | and 0 otherwise. The new equations are as follows: |
| 440 | -} | |
| 441 | 436 | |
| 442 | 437 | \begin{align} |
| 443 | 438 | a_i & = \sum_{j=1}^p \delta_{ij} \times C_{ij} \times (\pi_{ij}^C + \pi_i^-), & \forall i \in [1, n] \label{eq:areadef2} \\ |
| ... | ... | @@ -450,7 +445,6 @@ |
| 450 | 445 | respectively equations \ref{eq:areadef}, \ref{eq:rejectiondef} and \ref{eq:bits}. |
| 451 | 446 | Equation~\ref{eq:config} states that for each stage, a single configuration is chosen at most. |
| 452 | 447 | |
| 453 | -{\color{red} | |
| 454 | 448 | % JM: conflict merge |
| 455 | 449 | % However the problem remains quadratic at this stage since in the constraint~\ref{eq:areadef2} |
| 456 | 450 | % we multiply |
| ... | ... | @@ -464,7 +458,7 @@ |
| 464 | 458 | The problem remains quadratic at this stage since in the constraint~\ref{eq:areadef2} |
| 465 | 459 | we multiply |
| 466 | 460 | $\delta_{ij}$ and $\pi_i^-$. However, since $\delta_{ij}$ is a binary variable we can |
| 467 | -linearise linearize this multiplication. The following formula shows how to linearize | |
| 461 | +linearize this multiplication. The following formula shows how to linearize | |
| 468 | 462 | this situation in general case with $y$ a binary variable and $x$ a real variable ($0 \leq x \leq X^{max}$): |
| 469 | 463 | \begin{equation*} |
| 470 | 464 | m = x \times y \implies |
| ... | ... | @@ -481,7 +475,7 @@ |
| 481 | 475 | assumed on hardware characteristics, |
| 482 | 476 | the Gurobi (\url{www.gurobi.com}) optimization software will be able to linearize |
| 483 | 477 | for us the quadratic problem so the model is left as is. This model |
| 484 | -has $O(np)$ variables and $O(n)$ constraints.} | |
| 478 | +has $O(np)$ variables and $O(n)$ constraints. | |
| 485 | 479 | |
| 486 | 480 | % This model is non-linear and even non-quadratic, as $F$ does not have a known |
| 487 | 481 | % linear or quadratic expression. We introduce $p$ FIR configurations |
| ... | ... | @@ -515,7 +509,7 @@ |
| 515 | 509 | |
| 516 | 510 | Two problems will be addressed using the workflow described in the next section: on the one |
| 517 | 511 | hand maximizing the rejection capability of a set of cascaded filters occupying a fixed arbitrary |
| 518 | -silcon area (section~\ref{sec:fixed_area}) and on the second hand the dual problem of minimizing the silicon area | |
| 512 | +silicon area (section~\ref{sec:fixed_area}) and on the second hand the dual problem of minimizing the silicon area | |
| 519 | 513 | for a fixed rejection criterion (section~\ref{sec:fixed_rej}). In the latter case, the |
| 520 | 514 | objective function is replaced with: |
| 521 | 515 | \begin{align} |
| ... | ... | @@ -560,8 +554,8 @@ |
| 560 | 554 | \draw[->] (Deploy) edge node [left] { (5) } (Postproc) ; |
| 561 | 555 | \draw[->] (Postproc) -- (Results) ; |
| 562 | 556 | \end{tikzpicture} |
| 563 | - \caption{Design workflow from the input parameters to the results {\color{red} allowing for | |
| 564 | -a fully automated optimal solution search.}} | |
| 557 | + \caption{Design workflow from the input parameters to the results allowing for | |
| 558 | +a fully automated optimal solution search.} | |
| 565 | 559 | \label{fig:workflow} |
| 566 | 560 | \end{figure} |
| 567 | 561 | |
| 568 | 562 | |
| 569 | 563 | |
| 570 | 564 | |
| ... | ... | @@ -739,25 +733,25 @@ |
| 739 | 733 | \centering |
| 740 | 734 | \begin{subfigure}{\linewidth} |
| 741 | 735 | \includegraphics[width=\linewidth]{images/max_500} |
| 742 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 736 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 743 | 737 | the MAX/500 problem of maximizing rejection for a given resource allocation (500~arbitrary units).} |
| 744 | 738 | \label{fig:max_500_result} |
| 745 | 739 | \end{subfigure} |
| 746 | 740 | |
| 747 | 741 | \begin{subfigure}{\linewidth} |
| 748 | 742 | \includegraphics[width=\linewidth]{images/max_1000} |
| 749 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 743 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 750 | 744 | the MAX/1000 problem of maximizing rejection for a given resource allocation (1000~arbitrary units).} |
| 751 | 745 | \label{fig:max_1000_result} |
| 752 | 746 | \end{subfigure} |
| 753 | 747 | |
| 754 | 748 | \begin{subfigure}{\linewidth} |
| 755 | 749 | \includegraphics[width=\linewidth]{images/max_1500} |
| 756 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 750 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 757 | 751 | the MAX/1500 problem of maximizing rejection for a given resource allocation (1500~arbitrary units).} |
| 758 | 752 | \label{fig:max_1500_result} |
| 759 | 753 | \end{subfigure} |
| 760 | - \caption{\color{red}Solutions for the MAX/500, MAX/1000 and MAX/1500 problems of maximizing | |
| 754 | + \caption{Solutions for the MAX/500, MAX/1000 and MAX/1500 problems of maximizing | |
| 761 | 755 | rejection for a given resource allocation. |
| 762 | 756 | The filter shape constraint (bandpass and bandstop) is shown as thick |
| 763 | 757 | horizontal lines on each chart.} |
| ... | ... | @@ -782,8 +776,8 @@ |
| 782 | 776 | Logic (PL -- FPGA) to Processing System (PS -- general purpose processor) communication. |
| 783 | 777 | |
| 784 | 778 | \begin{table}[h!tb] |
| 785 | - \caption{Resource occupation {\color{red}following synthesis of the solutions found for | |
| 786 | -the problem of maximizing rejection for a given resource allocation}. The last column refers to available resources on a Zynq-7010 as found on the Redpitaya.} | |
| 779 | + \caption{Resource occupation following synthesis of the solutions found for | |
| 780 | +the problem of maximizing rejection for a given resource allocation. The last column refers to available resources on a Zynq-7010 as found on the Redpitaya.} | |
| 787 | 781 | \label{tbl:resources_usage} |
| 788 | 782 | \centering |
| 789 | 783 | \begin{tabular}{|c|c|ccc|c|} |
| ... | ... | @@ -816,7 +810,7 @@ |
| 816 | 810 | However, a rough estimation can be made with a simple equivalence: looking at |
| 817 | 811 | the first column (MAX/500), where the number of LUTs is quite stable for $n \geq 2$, |
| 818 | 812 | we can deduce that a DSP is roughly equivalent to 100~LUTs in terms of silicon |
| 819 | -area use. With this equivalence, our 500 arbitraty units correspond to 2500 LUTs, | |
| 813 | +area use. With this equivalence, our 500 arbitrary units correspond to 2500 LUTs, | |
| 820 | 814 | 1000 arbitrary units correspond to 5000 LUTs and 1500 arbitrary units correspond |
| 821 | 815 | to 7300 LUTs. The conclusion is that the orders of magnitude of our arbitrary |
| 822 | 816 | unit map well to actual hardware resources. The relatively small differences can probably be explained |
| ... | ... | @@ -944,7 +938,7 @@ |
| 944 | 938 | level or even better thanks to our underestimate of the cascade rejection as the sum of the |
| 945 | 939 | individual filter rejection. The only exception is for the monolithic case ($n = 1$) in |
| 946 | 940 | MIN/100: no solution is found for a single monolithic filter reach a 100~dB rejection. |
| 947 | -Futhermore, the area of the monolithic filter is twice as big as the two cascaded filters | |
| 941 | +Furthermore, the area of the monolithic filter is twice as big as the two cascaded filters | |
| 948 | 942 | (1131 and 1760 arbitrary units v.s 547 and 903 arbitrary units for 60 and 80~dB rejection |
| 949 | 943 | respectively). More generally, the more filters are cascaded, the lower the occupied area. |
| 950 | 944 | |
| 951 | 945 | |
| 952 | 946 | |
| 953 | 947 | |
| 954 | 948 | |
| ... | ... | @@ -1001,32 +995,32 @@ |
| 1001 | 995 | \centering |
| 1002 | 996 | \begin{subfigure}{\linewidth} |
| 1003 | 997 | \includegraphics[width=.91\linewidth]{images/min_40} |
| 1004 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 998 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 1005 | 999 | the MIN/40 problem of minimizing resource allocation for reaching a 40~dB rejection.} |
| 1006 | 1000 | \label{fig:min_40} |
| 1007 | 1001 | \end{subfigure} |
| 1008 | 1002 | |
| 1009 | 1003 | \begin{subfigure}{\linewidth} |
| 1010 | 1004 | \includegraphics[width=.91\linewidth]{images/min_60} |
| 1011 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 1005 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 1012 | 1006 | the MIN/60 problem of minimizing resource allocation for reaching a 60~dB rejection.} |
| 1013 | 1007 | \label{fig:min_60} |
| 1014 | 1008 | \end{subfigure} |
| 1015 | 1009 | |
| 1016 | 1010 | \begin{subfigure}{\linewidth} |
| 1017 | 1011 | \includegraphics[width=.91\linewidth]{images/min_80} |
| 1018 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 1012 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 1019 | 1013 | the MIN/80 problem of minimizing resource allocation for reaching a 80~dB rejection.} |
| 1020 | 1014 | \label{fig:min_80} |
| 1021 | 1015 | \end{subfigure} |
| 1022 | 1016 | |
| 1023 | 1017 | \begin{subfigure}{\linewidth} |
| 1024 | 1018 | \includegraphics[width=.91\linewidth]{images/min_100} |
| 1025 | - \caption{\color{red}Filter transfer functions for varying number of cascaded filters solving | |
| 1019 | + \caption{Filter transfer functions for varying number of cascaded filters solving | |
| 1026 | 1020 | the MIN/100 problem of minimizing resource allocation for reaching a 100~dB rejection.} |
| 1027 | 1021 | \label{fig:min_100} |
| 1028 | 1022 | \end{subfigure} |
| 1029 | - \caption{\color{red}Solutions for the MIN/40, MIN/60, MIN/80 and MIN/100 problems of reaching a | |
| 1023 | + \caption{Solutions for the MIN/40, MIN/60, MIN/80 and MIN/100 problems of reaching a | |
| 1030 | 1024 | given rejection while minimizing resource allocation. The filter shape constraint (bandpass and |
| 1031 | 1025 | bandstop) is shown as thick |
| 1032 | 1026 | horizontal lines on each chart.} |
| ... | ... | @@ -1104,7 +1098,6 @@ |
| 1104 | 1098 | compared to 3~days in the previous section: this problem is more easily solved than the |
| 1105 | 1099 | previous one. |
| 1106 | 1100 | |
| 1107 | -{\color{red} % r1.4 | |
| 1108 | 1101 | To conclude, we compare our monolithic filters with the FIR Compiler provided by |
| 1109 | 1102 | Xilinx in the Vivado software suite (v.2018.2). For each experiment we use the |
| 1110 | 1103 | same coefficient set and we compare the resource consumption, having checked that |
| ... | ... | @@ -1137,7 +1130,6 @@ |
| 1137 | 1130 | \end{tabular} |
| 1138 | 1131 | \end{table} |
| 1139 | 1132 | \renewcommand{\arraystretch}{1} |
| 1140 | -} | |
| 1141 | 1133 | |
| 1142 | 1134 | \section{Conclusion} |
| 1143 | 1135 |