6ff074d0921a622c8f339845cf49807d22dad193
[Mograsim.git] / net.mograsim.machine / src / net / mograsim / machine / Machine.java
1 package net.mograsim.machine;
2
3 import net.mograsim.logic.core.components.CoreClock;
4 import net.mograsim.logic.core.timeline.Timeline;
5 import net.mograsim.logic.core.types.BitVector;
6 import net.mograsim.machine.mi.MicroInstructionMemory;
7 import net.mograsim.logic.model.model.LogicModel;
8
9 public interface Machine
10 {
11         MachineDefinition getDefinition();
12
13         void reset();
14
15         LogicModel getModel();
16
17         CoreClock getClock();
18
19         BitVector getRegister(Register r);
20
21         void setRegister(Register r, BitVector value);
22
23         Timeline getTimeline();
24
25         MainMemory getMainMemory();
26
27         MicroInstructionMemory getMicroInstructionMemory();
28
29 }