Huffman Simplification For Sequential Logic

For a well-defined State-Transition-Table, the Huffman Simplification is the common algorithm to simplify state-transition.

[table]=StateTransition()
{
	transitions
	{
	    1: [1] -> 1/1'b0, [2] -> 3/1'b0;
	    2: [1] -> 2/1'b1, [2] -> 4/1'b0;
	    3: [1] -> 3/1'b1, [2] -> 5/1'b0;
	    4: [1] -> 4/1'b0, [2] -> 1/1'b1;
	    5: [1] -> 5/1'b0, [2] -> 1/1'b1;
	}
}
[simtable]=Simplification.HuffmanMealy(table);

Print("result:");
Print(simtable);

/*
The result should be :
result:
StateTransition()
{
  transitions
  {
    1: [1] -> 1/1'b0, [2] -> 3/1'b0;
    2: [1] -> 2/1'b1, [2] -> 4/1'b0;
    3: [1] -> 3/1'b1, [2] -> 5/1'b0;
    4: [1] -> 4/1'b0, [2] -> 1/1'b1;
    5: [1] -> 5/1'b0, [2] -> 1/1'b1;
  }
  simplification
  {
    tabletype = "well-defined" ;
    algorithm = "equivalance" ;
    grouping
    {
      1:1;
      2:2,3;
      3:4,5;
    }
    transitions
    {
      1: [1] -> 1/1'b0, [2] -> 2/1'b0;
      2: [1] -> 2/1'b1, [2] -> 3/1'b0;
      3: [1] -> 3/1'b0, [2] -> 1/1'b1;
    }
  }
}

*/



IsBiUnateFunction IsInverse IsMonotonicFunction IsNegativeUnateFunctionTo IsSymmetricFunction BinaryNumberToString GrayCode ToPOS ToROBDD logicvardef MantissaToPositiveInteger MostSignificantDigit POS ToFullAnd SAT ShortestInputsForDistinguishTwoStates Assign StateTransitionBasedly ToFeedbackSystem CreateCompactTableWithFullSimplification HuffmanMealy ShannonTree SimpleCover StateTransition TimingChart TruthTable GetSubTable CreateDummyLogicFunction ShannonExpansion Zero

Search This Website :

 
Buy website traffic cheap