## 4 Analysis of Our Current Approach  
The transitions from state \(s_{m}\in S\) are determined by elements of a set \(I(s_{m})\subseteq I\). There are \(L(s_{m})\leq L\) elements in the set \(I(s_{m})\subseteq I\). If the condition  
\[L(s_{m})+R1\leq S_{L} \tag{18}\]  
holds, then it is enough for a single LUT to represent a circuit for any PBF generated during the transitions from \(s_{m}\in S\). Therefore, for such states, it makes sense to use the full state codes for generating PBFs. If the condition (18) is violated, then the corresponding codes \(FC(s_{m})\) should be transformed into partial codes. This allows for creating a class of states \(S^{0}\subset S\) whose maximum binary codes do not require the transformation. Therefore, the partition based on (10) should be constructed only for the states \(s_{m}\
otin S^{0}\). Based on the above-mentioned statement, we propose to use the ideas from our paper [22]. First of all, we should divide the set \(S\) by disjoint sets \(S^{0}\) and \(S1=S\backslash S^{0}\). If a state \(s_{m}\in S\) satisfies condition (18), then this state is included in the set \(S^{0}\). The states \(s_{m}\in S^{0}\) create a block _CoreFC_. Otherwise, the state \(s_{m}\in S\) belongs to the set \(S1\). The states \(s_{m}\in S1\) form a block _CorePC_. Obviously, only the codes of states \(s_{m}\in S1\) should be transformed. _CoreFC_ determines the sets \(I1\subseteq I\), \(AV1\cup AV^{0}\subseteq AV\), and \(D^{0}\subseteq D\). The input \(i_{l}\in I1\) causes the transitions from states creating the _CoreFC_. The set \(AV1\) consists of additional variables \(a_{r}\in AV\) produced only during the transitions from states creating the _CoreFC_. The set \(AV^{0}\) consists of the additional variables produced by both FSM cores. The set  
Figure 4: Generalized diagram of a \(P_{T}Y\) Mealy FSM. includes functions \(D_{r}\in D\) produced during the transitions creating the _CoreFC_. Therefore, the circuit of _CoreFC_ is determined by the following SBFs:  
\[D^{0}=D^{0}(SV,I1); \tag{19}\]  
\[AV1=AV1(SV,I1); \tag{20}\]  
\[AV^{0}=AV^{0}(SV,I1). \tag{21}\]  
To synthesize _CorePC_, it is necessary to create the partition \(\pi_{S2}=\{S^{1},\ldots,S^{l}\}\) of the set \(S1\). This can be done using the same approach as the one creating \(\pi_{S}\). _CorePC_ determines the sets \(I2\subseteq I\) and \(AV2\subseteq AV\). Their purpose is clear from the previous analysis. Three sets (\(I^{j}_{PC}\), \(AV^{j}_{PC}\), \(D^{j}_{PC}\)) are determined by each class \(S^{j}\) of the partition \(\pi_{S2}\). Their meaning follows from the previous text. The state variables from the set \(ASV2\) encode the states \(s_{m}\in S1\). The codes of states \(s_{m}\in S^{l}\) are created from elements of the set \(ASV^{j}\subseteq ASV2\). There are \(R4\) elements in the set \(ASV2(R4=R_{1}+R_{2}+...+R_{l})\). The following SBFs determine the circuit of _CorePC_:  
\[D^{j}_{PC}=D^{j}_{PC}(ASV2^{j},I^{j}_{PC}); \tag{22}\]  
\[AV^{j}_{PC}=AV^{j}_{PC}(ASV2^{j},I^{j}_{PC}). \tag{23}\]  
To generate the final values of additional variables, FSM outputs, and state variables, we should use the functional transformer. This block is similar to the one used in the \(P_{T}Y\) FSM (Figure 3). Using this information, we propose to transform \(P_{T}Y\) FSMs into \(P_{2T}Y\) Mealy FSMs (Figure 5). In the proposed two-core FSM, the block _CoreFC_ implements SBFs (19)-(21). The block _CorePC_ implements SBFs (22) and (23). The block _LUTerFA_ is a functional assembler implementing the following disjunctions:  
\[D_{r}=\bigvee_{j=1}^{J}D^{j}_{r}\quad(r\in\{1,...,R1\}); \tag{24}\]  
\[AV2_{r}=\bigvee_{j=1}^{J}AV^{j}_{r}\quad(r\in\{1,...,R2\}). \tag{25}\]  
Figure 5: Architecture of the \(P_{2T}Y\) Mealy FSM. The block _LUTerFA_ includes a distributed full state code register whose informational inputs are connected with IMFs (24). The register is controlled by pulses _Clk_ and _Res_. The block _LUTerOF_ implements SBF (7) where \(AV=AV1\cup AV2\).