Function Simulator
The key class of function simulator is TopUnit. We can use TopUnit.CycleStep() to begin the execution of simulator.
In CycleStep(), we will call the Frontend() and Backend(), the former is used to update the many types of counters and the latter is used to execute instructions sequence.
In Backend(), we will call the following functions one by one
BackendCommit()BackendMemory()BackendExecute()BackendSchedule()
Among all these functions, the third function BackendExecute() will execute all the instructions.
