Merge branch 'development' of
authorFabian Stemmler <stemmler@in.tum.de>
Fri, 6 Sep 2019 20:13:45 +0000 (22:13 +0200)
committerFabian Stemmler <stemmler@in.tum.de>
Fri, 6 Sep 2019 20:13:45 +0000 (22:13 +0200)
https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into
development

Conflicts:
net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java
net.mograsim.machine/src/net/mograsim/machine/Machine.java

1  2 
net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java
net.mograsim.machine/src/net/mograsim/machine/Machine.java

@@@ -1,43 -1,34 +1,42 @@@
  package net.mograsim.logic.model.am2900.machine;
  
- import net.mograsim.logic.core.components.Clock;
+ import net.mograsim.logic.core.components.CoreClock;
  import net.mograsim.logic.core.timeline.Timeline;
  import net.mograsim.logic.core.types.BitVector;
- import net.mograsim.logic.model.model.ViewModel;
- import net.mograsim.logic.model.model.ViewModelModifiable;
- import net.mograsim.logic.model.modeladapter.LogicModelParameters;
- import net.mograsim.logic.model.modeladapter.ViewLogicModelAdapter;
- import net.mograsim.logic.model.serializing.IndirectGUIComponentCreator;
+ import net.mograsim.logic.model.model.LogicModel;
+ import net.mograsim.logic.model.model.LogicModelModifiable;
+ import net.mograsim.logic.model.modeladapter.CoreModelParameters;
+ import net.mograsim.logic.model.modeladapter.LogicCoreAdapter;
+ import net.mograsim.logic.model.serializing.IndirectModelComponentCreator;
  import net.mograsim.machine.Machine;
  import net.mograsim.machine.MachineDefinition;
 +import net.mograsim.machine.MainMemory;
  import net.mograsim.machine.Register;
 +import net.mograsim.machine.mi.MicroInstructionMemory;
 +import net.mograsim.machine.mi.StandardMicroInstructionMemory;
 +import net.mograsim.machine.standard.memory.WordAddressableMemory;
  
  public class Am2900Machine implements Machine
  {
        private Am2900MachineDefinition machineDefinition;
-       private ViewModelModifiable viewModel;
+       private LogicModelModifiable logicModel;
        private Timeline timeline;
-       private Clock clock;
 +      private MainMemory mainMemory;
 +      private MicroInstructionMemory instMemory;
+       private CoreClock clock;
  
        public Am2900Machine(Am2900MachineDefinition am2900MachineDefinition)
        {
                this.machineDefinition = am2900MachineDefinition;
-               viewModel = new ViewModelModifiable();
-               IndirectGUIComponentCreator.createComponent(viewModel,
-                               "resloader:Am2900Loader:jsonres:net/mograsim/logic/model/am2900/components/GUIAm2900.json");
-               LogicModelParameters params = new LogicModelParameters();
+               logicModel = new LogicModelModifiable();
+               IndirectModelComponentCreator.createComponent(logicModel,
 -                              "resloader:Am2900Loader:jsonres:net/mograsim/logic/model/am2900/components/ModelAm2900.json");
++                              "resloader:Am2900Loader:jsonres:net/mograsim/logic/model/am2900/components/Am2900.json");
+               CoreModelParameters params = new CoreModelParameters();
                params.gateProcessTime = 50;
                params.wireTravelTime = 10;
-               timeline = ViewLogicModelAdapter.convert(viewModel, params);
 +              mainMemory = new WordAddressableMemory(am2900MachineDefinition.getMainMemoryDefinition());
 +              instMemory = new StandardMicroInstructionMemory(am2900MachineDefinition.getMicroInstructionMemoryDefinition());
+               timeline = LogicCoreAdapter.convert(logicModel, params);
        }
  
        @Override
@@@ -1,10 -1,9 +1,10 @@@
  package net.mograsim.machine;
  
- import net.mograsim.logic.core.components.Clock;
+ import net.mograsim.logic.core.components.CoreClock;
  import net.mograsim.logic.core.timeline.Timeline;
  import net.mograsim.logic.core.types.BitVector;
- import net.mograsim.logic.model.model.ViewModel;
 +import net.mograsim.machine.mi.MicroInstructionMemory;
+ import net.mograsim.logic.model.model.LogicModel;
  
  public interface Machine {
        MachineDefinition getDefinition();