From ece8a59d0ce84b4b59e5a7202eb7ee9e7ce1a735 Mon Sep 17 00:00:00 2001 From: Daniel Kirschten Date: Wed, 28 Aug 2019 18:26:03 +0200 Subject: [PATCH] Implemented shift-via-MC instructions missing in the last commit --- .../components/am2904/GUIAm2904.json | 753 ++++++++++-------- 1 file changed, 437 insertions(+), 316 deletions(-) diff --git a/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json b/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json index a895b139..318840bb 100644 --- a/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json +++ b/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json @@ -298,69 +298,6 @@ mograsim version: 0.1.3 "orientation": "RIGHT" } }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#1", - "pos": { - "x": 180.0, - "y": 135.0 - }, - "params": 4 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#0", - "pos": { - "x": 165.0, - "y": 150.0 - }, - "params": 1 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#3", - "pos": { - "x": 335.0, - "y": 270.0 - }, - "params": 4 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#2", - "pos": { - "x": 295.0, - "y": 120.0 - }, - "params": 4 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#5", - "pos": { - "x": 530.0, - "y": 100.0 - }, - "params": 4 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#4", - "pos": { - "x": 150.0, - "y": 160.0 - }, - "params": 1 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#7", - "pos": { - "x": 215.0, - "y": 180.0 - }, - "params": 1 - }, { "id": "GUITriStateBuffer", "name": "GUITriStateBuffer#0", @@ -373,15 +310,6 @@ mograsim version: 0.1.3 "orientation": "RIGHT" } }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#6", - "pos": { - "x": 120.0, - "y": 15.0 - }, - "params": 1 - }, { "id": "GUITriStateBuffer", "name": "GUITriStateBuffer#1", @@ -394,24 +322,6 @@ mograsim version: 0.1.3 "orientation": "RIGHT" } }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#9", - "pos": { - "x": 215.0, - "y": 200.0 - }, - "params": 1 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#8", - "pos": { - "x": 215.0, - "y": 160.0 - }, - "params": 1 - }, { "id": "GUIAm2904muSR", "name": "DeserializedSubmodelComponent#1", @@ -565,460 +475,575 @@ mograsim version: 0.1.3 } }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#16", + "id": "GUINandGate", + "name": "GUINandGate#9", "pos": { - "x": 435.0, - "y": 655.0 - } + "x": 205.0, + "y": 10.0 + }, + "params": 1 }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#15", + "id": "GUINandGate", + "name": "GUINandGate#8", "pos": { - "x": 435.0, - "y": 575.0 - } + "x": 205.0, + "y": 30.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#14", + "id": "GUINandGate", + "name": "GUINandGate#5", "pos": { - "x": 415.0, - "y": 465.0 - } + "x": 225.0, + "y": 175.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#13", + "id": "GUINandGate", + "name": "GUINandGate#4", "pos": { - "x": 365.0, - "y": 485.0 - } + "x": 225.0, + "y": 155.0 + }, + "params": 1 }, { "id": "GUINandGate", - "name": "GUINandGate#11", + "name": "GUINandGate#7", "pos": { - "x": 60.0, - "y": 570.0 + "x": 205.0, + "y": 50.0 }, "params": 1 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#12", + "id": "GUINandGate", + "name": "GUINandGate#6", "pos": { - "x": 315.0, - "y": 505.0 + "x": 205.0, + "y": 70.0 + }, + "params": 1 + }, + { + "id": "GUImux3", + "name": "DeserializedSubmodelComponent#23", + "pos": { + "x": 300.0, + "y": 715.0 } }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#11", + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#22", "pos": { - "x": 265.0, - "y": 515.0 + "x": 120.0, + "y": 720.0 } }, { "id": "GUIxor", - "name": "DeserializedSubmodelComponent#10", + "name": "DeserializedSubmodelComponent#21", "pos": { - "x": 500.0, - "y": 360.0 + "x": 250.0, + "y": 820.0 } }, { - "id": "GUINandGate", - "name": "GUINandGate#10", + "id": "WireCrossPoint", + "name": "WireCrossPoint#30", "pos": { - "x": 340.0, - "y": 120.0 + "x": 550.0, + "y": 570.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#9", + "id": "WireCrossPoint", + "name": "WireCrossPoint#32", "pos": { - "x": 205.0, - "y": 10.0 + "x": 85.0, + "y": 590.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#8", + "id": "WireCrossPoint", + "name": "WireCrossPoint#31", "pos": { - "x": 205.0, - "y": 30.0 + "x": 120.0, + "y": 545.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#25", "pos": { - "x": 225.0, - "y": 175.0 + "x": 285.0, + "y": 755.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#4", + "id": "WireCrossPoint", + "name": "WireCrossPoint#24", "pos": { - "x": 225.0, - "y": 155.0 + "x": 285.0, + "y": 725.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#7", + "id": "WireCrossPoint", + "name": "WireCrossPoint#27", "pos": { - "x": 205.0, - "y": 50.0 + "x": 470.0, + "y": 385.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#6", + "id": "WireCrossPoint", + "name": "WireCrossPoint#26", "pos": { - "x": 205.0, - "y": 70.0 + "x": 290.0, + "y": 805.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#1", + "id": "WireCrossPoint", + "name": "WireCrossPoint#29", "pos": { - "x": 130.0, - "y": 5.0 + "x": 45.0, + "y": 580.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#28", "pos": { - "x": 190.0, - "y": 145.0 + "x": 470.0, + "y": 350.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#3", + "id": "GUISplitter", + "name": "GUISplitter#14", "pos": { - "x": 225.0, - "y": 215.0 + "x": 90.0, + "y": 720.0 }, - "params": 1 + "params": 3 }, { - "id": "GUINandGate", - "name": "GUINandGate#2", + "id": "GUISplitter", + "name": "GUISplitter#15", "pos": { - "x": 225.0, - "y": 195.0 + "x": 120.0, + "y": 455.0 }, - "params": 1 + "params": 2 }, { "id": "GUISplitter", - "name": "GUISplitter#9", + "name": "GUISplitter#12", "pos": { - "x": 240.0, - "y": 475.0 + "x": 405.0, + "y": 655.0 }, - "params": 4 + "params": 3 }, { "id": "GUISplitter", - "name": "GUISplitter#4", + "name": "GUISplitter#13", "pos": { - "x": 395.0, - "y": 225.0 + "x": 265.0, + "y": 725.0 }, - "params": 4 + "params": 3 }, { "id": "GUISplitter", - "name": "GUISplitter#3", + "name": "GUISplitter#10", "pos": { - "x": 450.0, - "y": 175.0 + "x": 445.0, + "y": 410.0 }, "params": 4 }, { "id": "GUISplitter", - "name": "GUISplitter#2", + "name": "GUISplitter#11", "pos": { - "x": 395.0, - "y": 195.0 + "x": 405.0, + "y": 575.0 }, - "params": 2 + "params": 3 }, { - "id": "GUImux3", - "name": "DeserializedSubmodelComponent#23", + "id": "WireCrossPoint", + "name": "WireCrossPoint#21", "pos": { - "x": 300.0, - "y": 715.0 - } + "x": 585.0, + "y": 640.0 + }, + "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#1", + "id": "WireCrossPoint", + "name": "WireCrossPoint#20", "pos": { - "x": 555.0, - "y": 80.0 + "x": 585.0, + "y": 590.0 }, - "params": 4 + "params": 1 }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#22", + "id": "WireCrossPoint", + "name": "WireCrossPoint#23", "pos": { - "x": 120.0, - "y": 720.0 - } + "x": 330.0, + "y": 640.0 + }, + "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#8", + "id": "WireCrossPoint", + "name": "WireCrossPoint#22", "pos": { - "x": 445.0, - "y": 370.0 + "x": 250.0, + "y": 540.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#1", + "pos": { + "x": 180.0, + "y": 135.0 }, "params": 4 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#21", + "id": "WireCrossPoint", + "name": "WireCrossPoint#0", "pos": { - "x": 250.0, - "y": 820.0 - } + "x": 165.0, + "y": 150.0 + }, + "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#7", + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", "pos": { - "x": 445.0, - "y": 330.0 + "x": 335.0, + "y": 270.0 }, "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#6", + "id": "WireCrossPoint", + "name": "WireCrossPoint#2", "pos": { - "x": 285.0, - "y": 320.0 + "x": 295.0, + "y": 120.0 }, - "params": 3 + "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#5", "pos": { - "x": 395.0, - "y": 265.0 + "x": 530.0, + "y": 100.0 }, "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#4", "pos": { - "x": 10.0, - "y": 245.0 + "x": 150.0, + "y": 160.0 }, - "params": 13 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#30", + "name": "WireCrossPoint#7", "pos": { - "x": 550.0, + "x": 215.0, + "y": 180.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#6", + "pos": { + "x": 120.0, + "y": 15.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#9", + "pos": { + "x": 215.0, + "y": 200.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#8", + "pos": { + "x": 215.0, + "y": 160.0 + }, + "params": 1 + }, + { + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#18", + "pos": { + "x": 135.0, + "y": 470.0 + } + }, + { + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#17", + "pos": { + "x": 190.0, + "y": 460.0 + } + }, + { + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#16", + "pos": { + "x": 435.0, + "y": 655.0 + } + }, + { + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#15", + "pos": { + "x": 435.0, + "y": 575.0 + } + }, + { + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#14", + "pos": { + "x": 415.0, + "y": 465.0 + } + }, + { + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#13", + "pos": { + "x": 365.0, + "y": 485.0 + } + }, + { + "id": "GUINandGate", + "name": "GUINandGate#11", + "pos": { + "x": 60.0, "y": 570.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#32", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#12", "pos": { - "x": 85.0, - "y": 590.0 - }, - "params": 1 + "x": 315.0, + "y": 505.0 + } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#31", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#11", "pos": { - "x": 120.0, - "y": 545.0 - }, - "params": 1 + "x": 265.0, + "y": 515.0 + } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#25", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#10", "pos": { - "x": 285.0, - "y": 755.0 + "x": 500.0, + "y": 360.0 + } + }, + { + "id": "GUINandGate", + "name": "GUINandGate#10", + "pos": { + "x": 340.0, + "y": 120.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#24", + "id": "GUINandGate", + "name": "GUINandGate#1", "pos": { - "x": 285.0, - "y": 725.0 + "x": 130.0, + "y": 5.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#27", + "id": "GUINandGate", + "name": "GUINandGate#0", "pos": { - "x": 470.0, - "y": 385.0 + "x": 190.0, + "y": 145.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#26", + "id": "GUINandGate", + "name": "GUINandGate#3", "pos": { - "x": 290.0, - "y": 805.0 + "x": 225.0, + "y": 215.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#29", + "id": "GUINandGate", + "name": "GUINandGate#2", "pos": { - "x": 45.0, - "y": 580.0 + "x": 225.0, + "y": 195.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#28", + "id": "GUISplitter", + "name": "GUISplitter#9", "pos": { - "x": 470.0, - "y": 350.0 + "x": 240.0, + "y": 475.0 }, - "params": 1 + "params": 4 }, { "id": "GUISplitter", - "name": "GUISplitter#14", + "name": "GUISplitter#4", "pos": { - "x": 90.0, - "y": 720.0 + "x": 395.0, + "y": 225.0 }, - "params": 3 + "params": 4 }, { - "id": "GUIAm2904RegCTInstrDecode", - "name": "GUIAm2904RegCTInstrDecode#0", + "id": "GUISplitter", + "name": "GUISplitter#3", "pos": { - "x": 50.0, - "y": 240.0 - } + "x": 450.0, + "y": 175.0 + }, + "params": 4 }, { "id": "GUISplitter", - "name": "GUISplitter#12", + "name": "GUISplitter#2", "pos": { - "x": 405.0, - "y": 655.0 + "x": 395.0, + "y": 195.0 }, - "params": 3 + "params": 2 }, { "id": "GUISplitter", - "name": "GUISplitter#13", + "name": "GUISplitter#1", "pos": { - "x": 265.0, - "y": 725.0 + "x": 555.0, + "y": 80.0 }, - "params": 3 + "params": 4 }, { "id": "GUISplitter", - "name": "GUISplitter#10", + "name": "GUISplitter#8", "pos": { "x": 445.0, - "y": 410.0 + "y": 370.0 }, "params": 4 }, { "id": "GUISplitter", - "name": "GUISplitter#11", + "name": "GUISplitter#7", "pos": { - "x": 405.0, - "y": 575.0 + "x": 445.0, + "y": 330.0 }, - "params": 3 + "params": 4 }, { - "id": "GUIAm2904ShiftInstrDecode", - "name": "GUIAm2904ShiftInstrDecode#0", + "id": "GUISplitter", + "name": "GUISplitter#6", "pos": { - "x": 50.0, - "y": 360.0 - } + "x": 285.0, + "y": 320.0 + }, + "params": 3 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#21", + "id": "GUISplitter", + "name": "GUISplitter#5", "pos": { - "x": 585.0, - "y": 640.0 + "x": 395.0, + "y": 265.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#20", + "id": "GUISplitter", + "name": "GUISplitter#0", "pos": { - "x": 585.0, - "y": 590.0 + "x": 10.0, + "y": 245.0 }, - "params": 1 + "params": 13 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#23", + "id": "GUIAm2904RegCTInstrDecode", + "name": "GUIAm2904RegCTInstrDecode#0", "pos": { - "x": 330.0, - "y": 640.0 - }, - "params": 1 + "x": 50.0, + "y": 240.0 + } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#22", + "id": "GUIAm2904ShiftInstrDecode", + "name": "GUIAm2904ShiftInstrDecode#0", "pos": { - "x": 250.0, - "y": 540.0 - }, - "params": 1 + "x": 50.0, + "y": 360.0 + } } ], "innerWires": [ @@ -2342,6 +2367,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#100", "path": [] }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#18", + "pinName": "Y" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#17", + "pinName": "I0" + }, + "name": "unnamedWire#221", + "path": [] + }, { "pin1": { "compName": "GUISplitter#4", @@ -2354,6 +2391,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#103", "path": [] }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#18", + "pinName": "I0" + }, + "pin2": { + "compName": "WireCrossPoint#20", + "pinName": "" + }, + "name": "unnamedWire#224", + "path": [] + }, { "pin1": { "compName": "DeserializedSubmodelComponent#5", @@ -2366,6 +2415,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#104", "path": [] }, + { + "pin1": { + "compName": "WireCrossPoint#21", + "pinName": "" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#18", + "pinName": "I1" + }, + "name": "unnamedWire#225", + "path": [] + }, { "pin1": { "compName": "GUISplitter#3", @@ -2378,6 +2439,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#101", "path": [] }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#17", + "pinName": "Y" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#0", + "pinName": "COVD_V" + }, + "name": "unnamedWire#222", + "path": [] + }, { "pin1": { "compName": "GUISplitter#4", @@ -2390,6 +2463,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#102", "path": [] }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#17", + "pinName": "I1" + }, + "pin2": { + "compName": "WireCrossPoint#19", + "pinName": "" + }, + "name": "unnamedWire#223", + "path": [] + }, { "pin1": { "compName": "_submodelinterface", @@ -2414,6 +2499,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#107", "path": [] }, + { + "pin1": { + "compName": "GUISplitter#15", + "pinName": "O1" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#17", + "pinName": "S0" + }, + "name": "unnamedWire#228", + "path": [] + }, { "pin1": { "compName": "GUISplitter#5", @@ -2450,6 +2547,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#105", "path": [] }, + { + "pin1": { + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "MC_MUX" + }, + "pin2": { + "compName": "GUISplitter#15", + "pinName": "I" + }, + "name": "unnamedWire#226", + "path": [] + }, { "pin1": { "compName": "GUISplitter#1", @@ -2474,6 +2583,18 @@ mograsim version: 0.1.3 "name": "unnamedWire#106", "path": [] }, + { + "pin1": { + "compName": "GUISplitter#15", + "pinName": "O0" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#18", + "pinName": "S0" + }, + "name": "unnamedWire#227", + "path": [] + }, { "pin1": { "compName": "WireCrossPoint#5", -- 2.17.1