# Basic Approaches for Reducing Power Consumption in Finite State Machine Circuits--A Review
## 5 Saving Power by State Assignment  
A huge number of state assignment methods are known. Some of them are aimed solely at power consumption reduction. But if some method minimizes the chip area occupied by an FSM circuit, then this method minimizes the static power consumption too. Due to this fact, we do not separate these two groups of methods. To prepare this part of our survey, we used the following sources: [83; 84; 85; 86; 87; 88; 89; 90; 91; 92; 93; 94; 95; 96; 97; 98; 99; 100; 101; 102; 103; 104; 105; 106; 107; 108; 109; 110; 111]. Of course, this is only the tip of the iceberg, but the generalization of these methods gives a general idea of executing RPC through the state assignment. The power consumption depends significantly on the chip area occupied by an FSM circuit. This was proven, for example, in [109]. In [109], four different state assignment approaches are investigated: binary (with \(R=\lceil log_{2}M\rceil\)), one-hot (with \(R=M\)), two-hot, and JEDI (the output-dominated version). In the case of two-hot state assignment, no more than two code bits can be equal to one, simultaneously. This allows the use of less than \(M\) bits for the state codes. If \(M=6\), for example, then three bits are required to encode the states. The following codes are used: 001, 010, 100, 101, 011, and 110. This gives the same value of R as it is for the binary state assignment. But if \(M=7\), then four bits are necessary to create two-hot state codes. This is less than for the one-hot approach (\(R=7\)), but more than for the binary approach (\(R=3\)). In [109], the benchmarks from [82] were used. The benchmarks were represented in the KISS format. The FPGA Express by Synopsis and Xilinx Foundation Tools F3 were used to obtain FSM circuits. The KISS files were transformed into a VHDL-based representation. To obtain the circuits' characteristics, the authors used the following FPGA sample: XC401 EPC84-1. The characteristics were measured using the following operating frequencies: 100 Hz, 2 MHz, and 8 MHz. \(S_{L}=4\) was used for the FPGAs of XC401E/XL [112]. The occupied area was measured as a number of CLBs. This approach is still used nowadays [113]. Sometimes, the number of used flip-flops is added to the number of CLBs. Some results of the investigations in [82] are shown in Table 1.  
We selected the results of experiments for five benchmarks having a wide range of characteristics. The last row of Table 1 includes the numbers of inputs, L, outputs, N, and states, M, of particular FSMs. The number of state variables, R, is the same as the number of flip-flops. It was taken from the reports generated by the CAD tools. As follows from Table 1, the number of inputs influences significantly the area characteristics. For example, practically the same value of R is obtained for benchmarks ex4 and kirkman. But there are two times more CLBs in the circuit for kirkman. This is connected with the significant difference in the values of L for these two benchmarks. The following conclusion is made in [109]: \"For FSMs with up to 8 states, the binary encoding must be used. For FSMs with more than 16 states, the one-hot is always the best choice\". We think this is true if FSMs have the same number of inputs \(x_{l}\in X\). Otherwise, a lot depends on the value of \(L+R\). It is very interesting that \"for any state encoding, the power is linearly correlated with the number of states. The coefficient of correlation is over 0.85\" [109]. The same is true for the relationship \"number of states-area\". Also, there is a very important conclusion made in [109]: \"between area and power, there is the coefficient of correlation 0.91\". It is shown in [109] that \"the 77% of smaller circuits consume lower power\". The results of [109] show that \"area, time and power consumption correlation with other FSM parameters (inputs, outputs and states) and combinations of these parameters neither produce significant results\". As shown in [109], the proper state assignment can give up to 57% of power saving.