Optimum Wordlength Search Using Sensitivity Information

Many digital signal processing algorithms are ﬁrst developed in ﬂoating point and later converted into ﬁxed point for digital hardware implementation. During this conversion, more than 50% of the design time may be spent for complex designs, and optimum wordlengths are searched by trading o ﬀ hardware complexity for arithmetic precision at system outputs. We propose a fast algorithm for searching for an optimum wordlength. This algorithm uses sensitivity information of hardware complexity and system output error with respect to the signal wordlengths, while other approaches use only one of the two sensitivities. This paper presents various optimization methods, and compares sensitivity search methods. Wordlength design case studies for a wireless demodulator show that the proposed method can ﬁnd an optimum solution in one fourth of the time that the local search method takes. In addition, the optimum wordlength searched by the proposed method yields 30% lower hardware implementation costs than the sequential search method in wireless demodulators. Case studies demonstrate the proposed method is robust for searching for the optimum wordlength in a nonconvex space.


INTRODUCTION
Digital signal processing algorithms often rely on long wordlengths for high precision, whereas digital hardware implementations of these algorithms need short wordlengths to reduce total hardware costs. Determining the optimum wordlength can be time-consuming if assignments of wordlengths are performed by trial and error. In a complex system, 50% of the design time may be spent on wordlength determination [1].
Optimum wordlength choices can be made by solving equations when propagated quantized errors [2] are expressed in an analytical form. However, an analytical form is difficult to obtain in complicated systems. Searching the entire space by simulation guarantees to find optimum wordlength. Computation time, however, increases exponentially as the number of wordlength variables increases. For these reasons, many simulation-based wordlength optimization methods have explored a subset of the entire space [3][4][5][6][7].
Choi and Burleson [3] showed how a general searchbased wordlength optimization can produce optimal or near-optimal solutions for different objective-constraint formulations. Sung and Kum [4] proposed simulation-based wordlength optimization for fixed-point digital signal processing systems. These search algorithms try to find the cost-optimal solution by using either "exhaustive" search or heuristics.
Han et al. [5] proposed search algorithms that can find the performance-optimal solution by using "sequential" or "preplanned" search. Those algorithms utilize the distortion sensitivity information with respect to the signal wordlengths at the system output such as propagated quantized error. Those algorithms assume that the hardware cost in each wordlength is the same. However, complicated digital systems such as a digital transceiver possess different cost or complexity in digital blocks.
A new algorithm that considers different hardware costs is proposed in [7]. The new algorithm utilizes the measure of the distortion sensitivity as well as complexity sensitivity. The new algorithm speeds up the search time to find an optimum wordlength by considering performance and cost as the objective function and the update direction.
This paper is organized as follows. In Section 2, related work for floating-point to fixed-point conversion is presented. Section 3 gives the background for wordlength optimization. Various search methods to find optimum wordlength are reviewed in Section 4. New sensitivity measures to update search directions are generalized in Section 5. Case studies of the optimum wordlength design are presented in Section 6. In Section 7, simulation results are discussed. Section 8 concludes the paper.

RELATED WORK
During the floating-point to fixed-point conversion process, fixed-point wordlengths composed of the integer wordlength (IWL) part and the fractional wordlength (FWL) part are determined by different approaches as shown in Table 1. Some published approaches for floating-point to fixed-point conversion use an analytic approach for range and error estimation [8,9,11,12,15], and others use a statistical approach [10,[12][13][14]. An analytic approach has a range and error model for integer wordlength and fractional wordlength design. Some use a worst-case error model for range estimation [8,15], and some use forward and backward propagation for IWL design [11]. Still, others use an error model for FWL [9,12]. The advantages of analytic techniques are that they do not require simulation stimulus and can be faster. However, they tend to produce more conservative wordlength results.
A statistical approach has been used for IWL and FWL determination. Some use range monitoring for IWL estimation [10,13], and some use error monitoring for FWL [10,12,14]. The work in [12] also uses an error model that has coefficients obtained through simulation. The advantage of statistical techniques is that they do not require a range or error model. However, they often need long simulation time and tend to be less accurate in determining wordlengths.
After obtaining models or statistics of range and error by analytic or statistical approaches, respectively, search algorithms can find an optimum wordlength. Some published methods search optimum wordlength without sensitivity information [3,4], and with sensitivity information [3,5,16] as shown in Table 2. "Exhaustive" search [4] and "branchand-bound" procedure [3] can find an optimum wordlength without any sensitivity information. However, nonsensitivity methods have an unrealistic search space as the number of wordlengths increases. Some use sensitivity information to search an optimum wordlength. "Local" search [3] and "evolutive" search in [16] use cost sensitivity information. The advantage of cost sensitivity methods is that they can find an optimum wordlength in terms of cost. "Sequential" search and "preplanned" search in [5] and "Max-1" search in [16] use error sensitivity information. The advantage of employing error sensitivity is that they find the optimum wordlength in terms of error faster than the cost sensitivity method. However, both sensitivity methods do not always reach global optimum wordlength.
Cantin et al. provide a useful survey of search algorithms for wordlength determination. In this work, search algorithms are compared, and the "preplanned search" shows the smallest number of iterations to find a solution. However, the heuristic procedures do not necessarily capture the optimum solution to the wordlength determination problem, due to nonconvexity in the constraint space [9]. Thus, the distance between a global optimum wordlength and a local optimum wordlength searched by algorithms is considered. The proposed method is robust to search a near optimum wordlength. This paper discusses the distance and robustness of the proposed algorithm in Section 7.

Fixed-point data format
When designers model at a high-level, floating-point numbers are useful to model arithmetic operations. Floatingpoint numbers can handle a very large range of values and are easily scaled. In hardware, floating-point data types are typically converted or built as fixed-point data types to reduce the amount of hardware needed to implement the functionality. To model the behavior of fixed-point arithmetic hardware, designers need bit-accurate fixed-point data types.
Fixed-point data consists of an integer part and a fractional part. The number of bits assigned to the integer representation is called the integer wordlength (IWL), and the number of bits assigned to the fraction is the factional wordlength (FWL) [17]. Fixed-point wordlength (WL) K. Han and B. L. Evans 3 corresponds to the following equation: The wordlength must be greater than 0. Given IWL and FWL, fixed-point data represents a value in the range R, with the quantization step Δ as −2 IWL ≤ R < 2 IWL , for signed, IWL and FWL are determined to prevent unwanted overflow and underflow. IWL can be determined by the following relation: Here, x is the smallest integer that is greater than or equal to x. The range, R, can be estimated by monitoring the maximum and minimum value or mean and standard derivation of a signal [13,18]. FWL can be determined by wordlength optimization or tradeoffs in the design parameters during fixed-point conversion.

Formulation of the optimum wordlength
The wordlength is an integer value, and a set of n wordlengths in a system is defined to be a wordlength vector, that is, w ∈ I n such as {w 1 , w 2 , . . . , w n }. We assume that the objective function f is defined by the sum of every wordlength implementation cost function c as where c k has a real value so that c k : I → R. The quantized performance function p indicates propagated precision or quantized error and is constrained as follows: where p has a real value so that p : I → R, and P req is a constant for a required performance. We also consider the lower bound wordlength w and upper bound wordlength w as constraints for each wordlength variable: The complete wordlength optimization problem can then be stated as min w∈I n f (w) subject to p(w) ≥ P req , w ≤ w ≤ w. (7) The goal of the wordlength optimization is hence to search for the optimizer w * that minimizes the objective function f (w) in (7).

Finding the optimum wordlength
One of the algorithms for searching the "optimum" wordlength starts with an initial feasible solution w (0) and performs an update via Here, h is an iteration index, s is the integer step size, and ξ is an integer update direction. A sound initial guess, a wellchosen step size, and a well-chosen update direction can reduce the number of iterations to find optimum wordlengths. Optimum wordlengths can be found by solving equations when the performance function p is expressed in an analytical form. If there is no analytical form to express the performance, then simulation-based search methods can be used to search for optimum wordlengths by measuring the performance function. Typical approaches involve assigning wordlength vector w (0) to a lower bound, an upper bound, or a vector between the lower and upper bound.
Step size can be fixed or adapted. The update direction is adapted according to the search algorithms in Section 4.
During iteration, the stopping criteria are dependent on the search algorithm. The algorithm that starts from the lower bound stops when the performance P reaches the required performance P req . The algorithm that starts from the upper bound stops when P falls below P req . Other algorithms stop when the performance P or cost c converges within a neighborhood.

REVIEW OF SIMULATION-BASED SEARCH METHODS
Optimum wordlengths can be found by solving equations when the performance function P is expressed in an analytical form. If there is no analytical form to express the performance, then simulation-based search methods can be used to search for optimum wordlengths by measuring the performance at the system output.

Complete search
Complete search (CS) tests every possible combination of wordlengths between the lower bound and upper bound and measures the performance of each combination by simulation. Then optimum wordlengths can be selected from the simulations results. For example, assuming that the number of independent variables to find optimum wordlength is two, and the lower bound and upper bound are {2, 2} and {8, 7}, respectively, the possible wordlength combinations are shown in Figure 1. The number of trial tests or trials is 42. The optimum wordlength can be selected from the given simulation results after simulation completes.
The total number of tests in N wordlength variables is  Complete search is guaranteed to find a global optimum point, but computational time and the number of tests increase exponentially as the number of wordlength variables increases.

Exhaustive search
Sung and Kum [4] search for the first feasible solution. They search for a wordlength with the minimum wordlength as the initial guess and increment the wordlength by one until the propagated error meets the minimum error. For example, assuming that we are trying to find the optimum wordlength for two variables, the minimum wordlengths are {2, 2}, and each of wordlength cost is similar, the search path is shown in Figure 2. An optimized point {5, 5} is given for a comparison between search methods. The minimum number of trials is 24.
We have generalized the total number of experiments of the exhaustive search in N dimensions with the sum of the distance. The sum of the distance, d, is defined as where dw i is the distance between the minimum wordlength and the optimum wordlength in ith dimension. The expected number of experiments of the exhaustive search is calculated by using the summation of combination-with-replacement in [19] as The trials may be bounded as The number of experiments is always less than that of complete search if at least two feasible solutions exist. However, the exhaustive search method is not always guaranteed in finding the global optimum.

Sequential search
The basic notion of sequential search is that each trial eliminates a portion of the region being searched [5]. This procedure is also called a "Min+b search" in [16]. The sequential search method decides where the most promising areas are located, and continues in the most favorable region after each set of experiments [20]. The sequential search algorithm can be summarized by the following four steps.
(1) Select a set of values for the independent variables, which satisfy the desired system performance during the onevariable simulations.
(3) Choose feasible locations at which system performance is evaluated.
(4) If the system performance of one point is better than others, then move to the better point, and repeat the search, until the point has been located within the desired accuracy.
The base point is the minimum wordlength as an initial wordlength w (0) in (8). In step (3), the direction of search, ξ as in (8) is chosen in accordance with maximum derivative of their performance where ∇ is the gradient operator. In Figure 3, starting from wordlength base point {2, 2}, we measure performance of {2, 3} and {3, 2} from the direction of sequential search in step (3). If the performance of {3, 2} is better than that of {2, 3}, then a new wordlength vector moves into {3, 2}. Simulations are repeated until satisfying the desired performance.
We have generalized the trials of the sequential search in N dimensions as In this example, the numbers of trials are 12 from (14) and also 12 from Figure 3. The number of trials is reduced by using sensitivity information. However, an optimum wordlength can be a local optima. Local search [3] uses sensitivity information with the above procedure, but it uses cost sensitivity instead of performance sensitivity.

Preplanned search
A preplanned search [5] is one in which all the experiments are completely scheduled in advance. The directions are obtained from the sensitivity of performance of an independent variable. The optimum point is found by employing the steepest descent among local neighbor points. The preplanned search algorithm in N dimensions is summarized by the following steps.
(1) Select a set of values for the independent variables, which satisfy the desired performance during the onevariable simulations.
(2) Make a performance sensitivity list from the onevariable simulations.
(3) Make a test schedule with the sensitivity list to follow the higher sensitivity points from base point.
(4) Evaluate the performance at those points. (5) Move to the points, until the point has been located within the desired accuracy.
In step (3), the direction of preplanned search is chosen in accordance with maximum derivative of an independent performance where In Figure 4, starting from the base point {2, 2}, the preplanned search makes a list of the directions of the steepest ascent by comparing the gradients of the independent performances in one dimension from the one-variable simulations. If the gradient, which is calculated from the one-variable  simulations at w 1 of 2 bits, is larger than that at w 2 for 2 bits, then next feasible location is {3, 2}. Then, if the gradient at w 1 of 3 is smaller than that at w 2 of 2, the next feasible location is {3, 3}. The simulation path would be {2, 2}, {3, 2}, {3, 3}, and so forth. After scheduling the feasible points, the performance of these points is evaluated until the value of the performance meets the desired accuracy. We generalized the trials of the preplanned search in N dimensions as In this example, the trials are 6 from (17) and from Figure 4. The number of trials is the least among the search methods reported so far. However, finding the global optimum wordlength is not guaranteed.

Search example in CDMA demodulator wordlength design
Typical demodulators are implemented with an analog block in front of an analog-to-digital converter (ADC) block as shown in Figure 5(a). As the speed of the ADC increases, analog parts are replaced with digital parts in communication systems [21]. We replaced the analog demodulator with the digital demodulator as shown in Figure 5(b).
The demodulator converts modulated signals into baseband signals. In the digital demodulator block of Figure 6, the sampled data values output by the ADC are multiplied by a carrier signal to shift the spectrum down to the baseband. The out-of-band signal is removed by the lowpass filter (LPF). The variables in the digital demodulator are given below [22,23]: The output SNR is used for performance measurement instead of frame error rate (FER), which is a general measurement to evaluate CDMA systems because direct measurement of FER requires at least 10 5 frames during the simulation [24]. The required output SNR in this system is over 0.8 dB, or FER is under 0.03 [23].
For the initial point, minimum wordlength is selected by the independent one-variable simulations in which one variable changes while other variables keep high precision. Satisfying the output SNR of 0.8 dB, the minimum wordlength of {B i , B c , B m , B f , B f c } is {4, 3, 4, 5, 7}, which is acquired from the one-variable simulations shown as Figure 7. For a simplified example, we assume that the cost-per-bit is one. In the exhaustive search, the next points are searched:  Table 3, {4, 3, 4, 6, 7} is the next   Table 3. The distance between the base and the optimum point is 4 by using (10). The number of trials for the sequential search to find an optimum wordlength is 20 by using (14).

Comparison
The four search methods are compared with the trials from (9), (11), (14), and (17), as shown in Table 4. The numbers of trials are calculated besides the one-variable simulations which all of the search methods use. The complete search needs 283920 trials to find optimum wordlength from (9) with w k = {16, 16, 16, 16, 16} and w k = {4, 3, 4, 5, 7} assuming that the maximum wordlength is 16 bits. If the computer simulation to calculate frame error rate per trial in CDMA system takes about 10 minutes, the complete search to find an optimum wordlength would require 5 years, which is unrealistic design time. The exhaustive search needs 56 trials by using (11), which is less than the complete search. The exhaustive search is, however, inefficient to find the optimum wordlength when the wordlength variables for optimization are numerous and the distance between base and optimum point is longer.

EURASIP Journal on Applied Signal Processing
The sequential search and preplanned search requires 20 and 5 trials, respectively, which are less than the other search methods. The preplanned search has the lowest number of experiments among search methods, but its distance using (10) is larger than that for sequential search. It implies that the wordlength of the sequential search method is closer to a global optimum with respect to hardware cost.
The sequential search and preplanned search have a loss of direction problem encountered by techniques based on the gradient projection method. This problem can be solved by adapting the step size.
The sequential search and the preplanned search reduce the trials by rates of 64% and 91%, respectively, when compared to the exhaustive search for wordlength optimization in the CDMA demodulator design. However, preplanned search seldom converges to the same optimum point, and the distance is longer than that of the other search methods.

SENSITIVITY MEASUREMENTS
The sensitivity information used for update directions in (8) can help reduce the search space dramatically. The sensitivity information can be obtained by measuring hardware complexity and distortion or propagated quantized precision loss. Complexity measure is used for hardware cost function in [3]. Distortion measure in [5] utilizes the sensitivity information of a propagated quantization error. Complexity-anddistortion measure in [7] combines two measures to update the search direction.

Complexity measure
The complexity measure method considers hardware complexity function as the cost function in (4) and uses the sensitivity information of the complexity as the direction to search for the optimum wordlengths. The local search in [3] uses complexity measure. The sensitivity information is calculated by gradient of the complexity function. For steepest descent direction, the update direction is where ∇ is gradient of function.
Complexity measure method updates wordlengths from the direction of the lowest sensitive complexity until a system meets a required performance such as P req in (5). The complexity measure method searches the wordlengths that minimize hardware complexity. However, it demands a large number of iterations since it does not use any distortion sensitivity information that can speed up to find the optimum wordlengths. For example, in a system composed of adders and multipliers, the complexity sensitivity of a multiplier is larger than that of an adder. The complexity measure method increases the wordlength in the adder with the right of priority during an increase procedure even if the wordlength in the multiplier affects the propagated quantized performance more. It would waste computer simulation time if the complexity sensitivity of an adder is much smaller than that of a multiplier.

Distortion measure
The distortion measure method considers distortion function as the objective function in (4) and uses the sensitivity information of the distortion for the direction to search for the optimum wordlengths. Sequential search uses distortion measure. This method assumes that every cost or complexity function would be the same or equal to 1, and selects wordlengths with the update direction according to the distortion sensitivity information.
The complexity objective function is replaced with the distortion objective function d(w) as and the complexity minimization problem is changed into a distortion minimizing problem by where D req is required distortion, and C req is a complexity constant.
The sensitivity information is also calculated by gradient of the distortion function. For the steepest descent direction, the update direction is For the distortion, Fiore and Lee [25] computed an error variance, and Han et al. [5]   the search direction depends on the distortion by changing the wordlengths. This method rapidly finds the optimum wordlength satisfying the required performance by a fewer number of iterations compared to complexity measure method. However, the wordlengths do not guarantee the optimum wordlengths in terms of the complexity.

Complexity-and-distortion measure
The complexity-and-distortion measure combines the complexity measure with the distortion measure by a weighting factor. In the objective function, both complexity and distortion are simultaneously considered. We normalize the complexity and the distortion function and multiply them with complexity and distortion weighting factors, α c and α d , respectively. The new objective function is where c n (w) and d n (w) are normalized complexity function and distortion function, respectively. The relation between the weighting factors is where Using (22), the objective function gives a new optimization problem where D req and C req are the required distortion and a complexity constant, respectively. This optimization problem is to find wordlengths that minimize complexity and distortion simultaneously according to the weighting factors. The update direction for the steepest decent direction to find the optimum wordlength w is From (22) and (26), the update direction is Setting the complexity and distortion weighting factor, α c or α d from 0 to 1, the complexity-and-distortion method searches for an optimum wordlength with tradeoffs between complexity measure method and distortion measure method. The complexity-and-distortion measure becomes the complexity measure or the distortion measure when α d = 0 or α c = 0, respectively.
The complexity-and-distortion measure method can reduce the number of iterations for searching the optimum wordlengths, because the distortion sensitivity information is utilized. This method can more rapidly find the optimum wordlength that satisfies the required performance by using less iteration compared to the complexity measure method. However, the wordlengths are not guaranteed to be optimal in terms of the complexity.

OFDM demodulator design
Digital communication systems have digital blocks such as a demodulator that needs wordlength optimizations. Searching algorithms in Section 4 were applied to the wordlength optimization of CDMA demodulator design in Section 4.5. From the CDMA case study, the sequential search is one of the promising methods to find an optimum wordlength. In this section, complexity measure, distortion measure, and complexity-and-distortion measure in Section 5 are applied in the sequential search framework to determine wordlengths for a fixed broadband wireless demodulator.
Fixed broadband wireless access technology is intended for high-speed voice, video, and data services, which is presently dominated by cable and digital subscriber line technologies [26]. One of the designs for orthogonal frequency division multiplexing (OFDM) demodulators for fixed broadband wireless access is shown in Figure 8. For the wireless channel, we used Stanford University Interim models [27,28].
The main blocks in the demodulator for finite wordlength determination are the fast fourier transform (FFT), equalizer, and estimator. For wordlength variables, we choose the wordlengths that have the most significant effect on complexity and distortion in the system. For the OFDM demodulator, we select wordlength variables w 0 , w 1 , w 2 , and w 3 for the FFT input, equalizer right input, channel estimator input, and equalizer upper input, respectively, as shown in Figure 8.  We assume that the internal wordlengths of the given blocks have already been decided. In simulation, only the inputs to each block are constrained to be in fixed-point type, whereas the blocks themselves are simulated in floatingpoint type.
For the hardware complexity, the number of multiplications is measured assuming that processing units are not reused. The number of multiplications in a K-point FFT block is where K is the number of taps. The cost of the 256-point FFT in the fixed broadband wireless access is estimated to be 1024. Approximately, the simplified complexity vector c of the wordlength per bit is assumed to be {1024, 1, 128, 2} from [4,29]. We also assume the complexity increases linearly as wordlength increases to simplify demonstration. For the distortion measurement, bit error rate (BER) is measured. The minimum wordlength searched by changing one wordlength variable, while other variables have high precision (i.e., 16 bits), is used for the initial wordlength [4,5]. The simulation for the minimum wordlength is shown in Figure 9.
Assuming the minimum performance of BER is 5 × 10 −3 , the minimum wordlength is {5, 4, 4, 4} from Figure 9. Starting from the minimum wordlength, wordlengths are increased according to the sensitivity information of different measures in Section 5. We measure the number of iterations until they find their own optimum wordlength satisfying the required performance such as BER ≤ 2 × 10 −3 without channel decoder. For the optimum wordlength, we follow the hybrid procedure [16] that combines a wordlength increase followed by a wordlength decrease. Simulation results are presented in Section 7.

IIR filter case
OFDM demodulation case requires a large number of long simulations. This becomes especially time-consuming when each simulation takes hours in ensemble average of BER estimation. For more general case, infinite impulse response (IIR) filter that has 7 wordlengths is simulated. There are various methods for getting error function and cost function as described in related work section. For simplifying the simulation, mean square error (MSE) is measured for the error function, and a linear cost function of wordlength is assumed. Required performance of the IIR filter is assumed MSE of 0.1. In the IIR filter case study, the wordlength vector has 7 elements, and the hardware complexity of the arithmetic block has less difference when compared to the OFDM case study. Results are presented in Section 7.

RESULTS
The wordlength optimization problem is a discrete optimization problem with a nonconvex constraint space [30]. This nonconvexity makes it harder to search for a global optimum solution [31]. Tables 5 and 6 show that there are several local optimum wordlengths that satisfy error specification and minimize hardware complexity in case studies. In this section, wordlength optimization methods used in case studies are compared in terms of number of iteration and hardware complexity, and future work is discussed.

Number of iterations
The number of iteration to search an optimum wordlength in OFDM demodulator design is shown in Figure 10. The initial wordlength does not satisfy the desired performance. After a number of trials by updating wordlength as in (8), the error at the system output decreases. The sequential search and the CDM search reach the feasible area after 15 trials. However, the local search takes 38 trials. After arriving at the feasible area, an optimum wordlength is searched again. In this case, the wordlengths, which are searched by the sequential search or the CDM search, already arrive at an optimum wordlength. However, the local search needs more iterations to find an optimum wordlength. The total number of trials to find an optimum wordlength in each method for OFDM case is shown in Table 5. The sequential search and the CDM method can find an optimum solution in one-fourth of the time that the local search method takes.
In IIR filter design, the number of iterations to search an optimum wordlength is shown in Figure 11. This figure demonstrates the number of trials in an infeasible area and a feasible area. After the search methods reach a feasible region, where MSE of IIR filter is under 0.1, the search methods continue searching an optimum wordlength. The sequential   search and the local search need a total of 56 and 126 iterations, respectively, including iterations in feasible and infeasible area as shown in Table 6. The "Max-1" search starting from the feasible area needs 96 iterations. The CDM methods with weighting factor of 0.25, 0.5, and 0.75 are used for comparison. When α c is less than 0.5, the CDM methods have the property of the sequential search. When α c is greater than 0.5, the CDM methods search as the local search does. In Figure 11, the CDM methods with weighting factor of 0.25 and 0.75 show similar shape as the sequential search and the local search, respectively. In the IIR filter case, the CDM method with α c of 0.5 can find an optimum solution in one-fourth of the time that the local search method takes. In general, if error sensitivity information for searching an optimum wordlength is used, the number of iterations can be reduced. The sequential search and the CDM method with less than α c of 1 use the error sensitivity information. Thus, they converge quickly into an optimum wordlength that satisfies the required error performance. Tables 5 and 6 show the hardware complexity according to the searched optimum wordlengths in various methods. The results show that the sequential search method, which only uses error sensitivity information for the update direction, finds an optimum wordlength that has higher complexity than the CDM method and the local search in the OFDM demodulation case study. However, an optimum wordlength searched by the local search method, which uses hardware complexity information, has higher complexity in the IIR filter case study. If the design space is convex and has only one optimum solution, then various search methods find the optimum solution. However, wordlength optimization problem has many local optimum solutions because of nonconvex space. As the number of wordlength variables increases and as the system becomes more complicated, the probability in being stuck in a local optimum solution increases. In the IIR filter case with 7 elements in wordlength vector, the wordlengths searched by the local search method are far from globally optimal. The CDM search with the weighting factor of 0.5 finds an optimum wordlength that has the lowest hardware complexity in this IIR case study. The CDM search with the weighting factor of 0.75 tends to be the local search. The hardware complexity from the CDM method of 0.75 is between the CDM of 0.5 and the local search. Similarly, the complexity from CDM method of 0.25 is between the sequential search and the CDM of 0.5.

Hardware complexity
For more examples, additional optimum wordlength search results in a noise cancellation with Wiener filter [32] are shown in Table 7.

Discussion
The CDM method, which uses error and complexity sensitivity for optimum wordlength search, takes advantages from the sequential search and the local search. This method reduces the number of iterations because of the error sensitivity that helps to fast reach feasible boundary. At the same time, this method finds a near-optimum wordlength that has lower hardware complexity because of the sensitivity of hardware complexity. The proposed method is robust for search optimum wordlength in a nonconvex space because this method is not easily captured by local optimum solutions.
The complexity-and-distortion measure method has flexibility to search for an optimum wordlength by setting weighting factor. Designer can select the weighting factor, α c , as in (23). The α c of 0.5 means that the CDM method equally uses the sensitivity information of the error and the complexity. The α c of 0.5 in CDM is reasonable for optimum wordlength search algorithms.

Future work
For an extension of work, various methods can be combined for wordlength optimization. Wordlength grouping [4] can be used to reduce a wordlength vector. Error model or error monitoring instead of error measuring can be used to reduce the simulation time. Actual cost model [12] can be used to get accurate result. For the searching method, different search methods such as binary search can be combined. Preplanned search, which is the fastest error sensitivity search method as compared in [16], can employ CDM methods to reach more quickly a near-optimum wordlength.

CONCLUSION
This paper generalized wordlength optimization methods that use sensitivity measures. The proposed complexity-anddistortion measure equation can express the local search or sequential search by changing the weighting factor. The weighting factor can reduce the number of iterations and the hardware complexity compared to the local search and the sequential search, respectively. In our case studies, the complexity-and-distortion method is simulated and compared. The proposed method can find the optimum solution in one-fourth of the time that the local search takes. In addition, the optimum wordlength searched by the proposed method has 30% lower hardware implementation costs than sequential search in wireless demodulators. Case studies demonstrate that the proposed method is robust for searching optimum wordlength in a nonconvex space. Future extensions of this work include combination with analytic wordlength optimization and preplanned search.