# Area and Performance Estimates of Finite State Machines in Reconfigurable Systems
## 2 Related Works
### Estimates of FSMs
#### 3.2.3 Other Estimates for FSMs
However, the _diff_w_ and _max_w_ estimates can evaluate the intermediate results of FSM state encoding and can positively influence finding the best solution. ## 4 Results and Discussions

The considered estimates were used in the sequential method of FSM state encoding [8]. The studies were performed using design tool Quartus from Intel version 24.1 while implementing the FSM benchmarks of the Microelectronics Center of North Carolina (MCNC) [20] in FPGAs of family Cyclone 10 LP. The selection of states to encode was performed in P_C mode [8], when for encoding the state \(s_{i}\), \(s_{i}\in S\), with the maximum number of connections to already encoded states is selected. The search for the most appropriate code was performed using the considered estimates. ### Results with Respect to the FSM Area

The experimental results with respect to the FSM area are shown in Tables 6 and 7, where \(L1,\ldots,L7\) are the number of LUTs in the FSM circuit when using the corresponding estimate; _Lmin_ is the minimum value of area for a particular example; _Best_ is the number of best solutions; _Unique_ is the number of unique solutions; \(L1/Lmin\), \(\ldots\), \(L7/Lmin\) are the ratios of the corresponding parameters; and \(Av\) is the arithmetic mean of the parameter. Here, the unique solution is understood as the best solution, which is achieved using a particular estimate and which is not achieved using other estimates. In the sequential state coding method [8], the _e_CPLD_, _classic_, and _terms_ estimates lead to the same results when the code with the minimum number of ones is selected at each step of the algorithm. Therefore, in Tables 6 and 7, the values for the _classic_ estimate only are given. \begin{table}
\begin{tabular}{c c c c c} \hline  & _e\_FPGA_ & _e\_CPLD_ & _classic_ & _terms_ \\ \hline _area_(\(d_{0}\)) & 2 & 4 & 22 & 6 \\ _area_(\(d_{1}\)) & 2 & 2 & 11 & 3 \\ _area_(\(d_{2}\)) & 2 & 5 & 23 & 7 \\ _area_ & 6 & 11 & 56 & 16 \\ \hline \end{tabular}
\end{table} 
Table 4: Values of the estimates for area. \begin{table}
\begin{tabular}{c c c c c} \hline  & _rank(\(d_{r}\))_ & _seq\_dec_ & _par\_dec_ & _avg\_dec_ \\ \hline _pls_/_plp_(\(d_{0}\)) & 6 & 2 & 2 & 2 \\ _pls_/_plp_(\(d_{1}\)) & 5 & 2 & 2 & 2 \\ _pls_/_plp_(\(d_{2}\)) & 6 & 2 & 2 & 2 \\ _cpl_ & 2 & 2 & 2 & 2 \\ \hline \end{tabular}
\end{table} 
Table 5: The rank values, the number of levels, and the critical path length of the FSM transition functions in calculating performance estimates. Table 7 shows that with respect to the best area solution on average (parameter _Av_), the estimates can be arranged in the following order: \begin{tabular}{l l} _avg_dec_--1.059; _par_dec_--1.063; _seq_dec_--1.068; _e_FPGA_--1.072; _classic_--1.072; _max_w_--1.104; _diff_w_--1.193. \\ \end{tabular} 

Unexpectedly, the _avg_dec_, _par_dec_, and _seq_dec_ estimates, which are designed to measure the performance rather than the area of FSMs, are the best in terms of area on average. Of these, the _par_dec_ estimate achieves the largest number (13) of best solutions (Table 6). The _e_FPGA_ estimate, which is designed to most accurately measure the area when implementing FSMs in FPGAs, achieves 9 best solutions and follows immediately after the _avg_dec_, _par_dec_, and _seq_dec_ estimates. This is followed by the estimates of _classic_, _max_w_, and _diff_w_. Note that the _max_w_ estimate unexpectedly reaches the highest number

\begin{table}
\begin{tabular}{c c c c c c c c c} \hline \hline \multirow{2}{*}{**FSM**} & _e\_FPGA_ & _classic_ & _diff\_w_ & _max\_w_ & _seq\_dec_ & _par\_dec_ & _avg\_dec_ & \\  & _L1_ & **L2** & **



of unique solutions (9). The _diff_w_ estimate ranks last in the order given, but it achieves the best 5 solutions, among which 3 solutions are unique. Given the reported results, we recommend that when searching for the best area solution using the sequential state coding method [8], all estimates should be considered, since each estimate can achieve the best solution.