From e0bfe2d64e23a4de6e61863aa3aff4af35b65aee Mon Sep 17 00:00:00 2001 From: Daniel Kirschten Date: Thu, 12 Sep 2019 14:45:36 +0200 Subject: [PATCH] More work in Am2900: -created some missing connections -created switches/displays for things we can't connect yet --- .../logic/model/am2900/components/Am2900.json | 541 +++++++++++++++--- 1 file changed, 473 insertions(+), 68 deletions(-) diff --git a/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/Am2900.json b/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/Am2900.json index 9c64c868..1d2a59fa 100644 --- a/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/Am2900.json +++ b/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/Am2900.json @@ -53,6 +53,33 @@ "y": 481.0 } }, + { + "id": "BitDisplay", + "name": "BitDisplay#0", + "pos": { + "x": 10.0, + "y": 165.0 + }, + "params": 8 + }, + { + "id": "BitDisplay", + "name": "BitDisplay#1", + "pos": { + "x": 10.0, + "y": 115.0 + }, + "params": 16 + }, + { + "id": "BitDisplay", + "name": "BitDisplay#2", + "pos": { + "x": 10.0, + "y": 140.0 + }, + "params": 16 + }, { "id": "Clock", "name": "Clock#0", @@ -134,8 +161,8 @@ "id": "FixedOutput", "name": "FixedOutput#5", "pos": { - "x": 406.0, - "y": 446.0 + "x": 410.0, + "y": 475.0 }, "params": { "bits": [ @@ -160,8 +187,8 @@ "id": "ManualSwitch", "name": "ManualSwitch#0", "pos": { - "x": 466.0, - "y": 820.0 + "x": 10.0, + "y": 290.0 }, "params": 1 }, @@ -169,20 +196,56 @@ "id": "ManualSwitch", "name": "ManualSwitch#1", "pos": { - "x": 476.0, - "y": 905.0 + "x": 10.0, + "y": 265.0 }, "params": 80 }, { - "id": "NandGate", - "name": "NandGate#0", + "id": "ManualSwitch", + "name": "ManualSwitch#2", "pos": { - "x": 230.0, - "y": 199.0 + "x": 10.0, + "y": 240.0 + }, + "params": 12 + }, + { + "id": "ManualSwitch", + "name": "ManualSwitch#3", + "pos": { + "x": 10.0, + "y": 315.0 }, "params": 1 }, + { + "id": "ManualSwitch", + "name": "ManualSwitch#4", + "pos": { + "x": 10.0, + "y": 340.0 + }, + "params": 1 + }, + { + "id": "ManualSwitch", + "name": "ManualSwitch#5", + "pos": { + "x": 10.0, + "y": 190.0 + }, + "params": 1 + }, + { + "id": "ManualSwitch", + "name": "ManualSwitch#6", + "pos": { + "x": 10.0, + "y": 215.0 + }, + "params": 16 + }, { "id": "NandGate", "name": "NandGate#1", @@ -810,6 +873,96 @@ }, "params": "A bus" }, + { + "id": "TextComponent", + "name": "TextComponent#10", + "pos": { + "x": -50.0, + "y": 115.0 + }, + "params": "d" + }, + { + "id": "TextComponent", + "name": "TextComponent#11", + "pos": { + "x": -50.0, + "y": 140.0 + }, + "params": "a" + }, + { + "id": "TextComponent", + "name": "TextComponent#2", + "pos": { + "x": -50.0, + "y": 165.0 + }, + "params": "instr" + }, + { + "id": "TextComponent", + "name": "TextComponent#3", + "pos": { + "x": -50.0, + "y": 265.0 + }, + "params": "micro instr" + }, + { + "id": "TextComponent", + "name": "TextComponent#4", + "pos": { + "x": -50.0, + "y": 290.0 + }, + "params": "mireg c" + }, + { + "id": "TextComponent", + "name": "TextComponent#5", + "pos": { + "x": -50.0, + "y": 240.0 + }, + "params": "mprom y" + }, + { + "id": "TextComponent", + "name": "TextComponent#6", + "pos": { + "x": -50.0, + "y": 315.0 + }, + "params": "ireg c" + }, + { + "id": "TextComponent", + "name": "TextComponent#7", + "pos": { + "x": -50.0, + "y": 340.0 + }, + "params": "bz/pc c" + }, + { + "id": "TextComponent", + "name": "TextComponent#8", + "pos": { + "x": -50.0, + "y": 190.0 + }, + "params": "d in enable" + }, + { + "id": "TextComponent", + "name": "TextComponent#9", + "pos": { + "x": -50.0, + "y": 215.0 + }, + "params": "d in" + }, { "id": "TriStateBuffer", "name": "TriStateBuffer#0", @@ -858,6 +1011,18 @@ "orientation": "RIGHT_ALT" } }, + { + "id": "TriStateBuffer", + "name": "TriStateBuffer#4", + "pos": { + "x": 45.0, + "y": 185.0 + }, + "params": { + "logicWidth": 16, + "orientation": "UP" + } + }, { "id": "WireCrossPoint", "name": "WireCrossPoint#0", @@ -907,10 +1072,10 @@ "id": "WireCrossPoint", "name": "WireCrossPoint#13", "pos": { - "x": 140.0, - "y": 204.0 + "x": 415.0, + "y": 15.0 }, - "params": 1 + "params": 16 }, { "id": "WireCrossPoint", @@ -921,15 +1086,6 @@ }, "params": 16 }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#15", - "pos": { - "x": 246.0, - "y": 395.0 - }, - "params": 1 - }, { "id": "WireCrossPoint", "name": "WireCrossPoint#16", @@ -952,7 +1108,7 @@ "id": "WireCrossPoint", "name": "WireCrossPoint#18", "pos": { - "x": 95.0, + "x": 135.0, "y": 15.0 }, "params": 16 @@ -970,8 +1126,8 @@ "id": "WireCrossPoint", "name": "WireCrossPoint#2", "pos": { - "x": 665.0, - "y": 361.0 + "x": 725.0, + "y": 360.0 }, "params": 1 }, @@ -1056,12 +1212,21 @@ }, "params": 9 }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#29", + "pos": { + "x": 95.0, + "y": 15.0 + }, + "params": 16 + }, { "id": "WireCrossPoint", "name": "WireCrossPoint#3", "pos": { - "x": 730.0, - "y": 361.0 + "x": 840.0, + "y": 360.0 }, "params": 1 }, @@ -1144,19 +1309,19 @@ } }, { - "id": "dff16_invwe", - "name": "dff16_invwe#0", + "id": "dff16", + "name": "dff16#0", "pos": { - "x": 471.0, - "y": 196.0 + "x": 280.0, + "y": 190.0 } }, { - "id": "dff16_we", - "name": "dff16_we#0", + "id": "dff16_invwe", + "name": "dff16_invwe#0", "pos": { - "x": 265.0, - "y": 189.0 + "x": 471.0, + "y": 196.0 } }, { @@ -1171,8 +1336,8 @@ "id": "inc", "name": "inc#0", "pos": { - "x": 220.0, - "y": 229.0 + "x": 230.0, + "y": 220.0 }, "params": 16 }, @@ -1604,12 +1769,12 @@ }, { "pin1": { - "compName": "NandGate#0", - "pinName": "Y" + "compName": "Splitter#46", + "pinName": "O3" }, "pin2": { - "compName": "dff16_we#0", - "pinName": "WE" + "compName": "mux1_16#0", + "pinName": "S" }, "name": "unnamedWire#127", "path": [] @@ -1620,7 +1785,7 @@ "pinName": "Y" }, "pin2": { - "compName": "dff16_we#0", + "compName": "dff16#0", "pinName": "D" }, "name": "unnamedWire#128", @@ -1688,12 +1853,12 @@ }, { "pin1": { - "compName": "WireCrossPoint#12", + "compName": "BitDisplay#0", "pinName": "" }, "pin2": { - "compName": "NandGate#0", - "pinName": "B" + "compName": "Splitter#11", + "pinName": "I" }, "name": "unnamedWire#133", "path": [] @@ -1712,37 +1877,37 @@ }, { "pin1": { - "compName": "mux1_16#0", - "pinName": "S" + "compName": "ManualSwitch#2", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "mux1_12#0", + "pinName": "I0" }, "name": "unnamedWire#135", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "Am2910#0", + "pinName": "_MAP" }, "pin2": { - "compName": "NandGate#0", - "pinName": "A" + "compName": "mux1_12#0", + "pinName": "S" }, "name": "unnamedWire#136", "path": [] }, { "pin1": { - "compName": "dff16_we#0", - "pinName": "Q" - }, - "pin2": { "compName": "WireCrossPoint#14", "pinName": "" }, + "pin2": { + "compName": "dff16#0", + "pinName": "Q" + }, "name": "unnamedWire#137", "path": [] }, @@ -2024,12 +2189,12 @@ }, { "pin1": { - "compName": "WireCrossPoint#15", + "compName": "ManualSwitch#3", "pinName": "" }, "pin2": { - "compName": "mux1_12#0", - "pinName": "S" + "compName": "dff16_invwe#0", + "pinName": "C" }, "name": "unnamedWire#159", "path": [] @@ -2048,11 +2213,11 @@ }, { "pin1": { - "compName": "Am2910#0", - "pinName": "_MAP" + "compName": "WireCrossPoint#22", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#15", + "compName": "WireCrossPoint#13", "pinName": "" }, "name": "unnamedWire#160", @@ -3692,7 +3857,7 @@ }, { "pin1": { - "compName": "WireCrossPoint#22", + "compName": "WireCrossPoint#13", "pinName": "" }, "pin2": { @@ -3752,13 +3917,13 @@ }, { "pin1": { - "compName": "Splitter#46", - "pinName": "O3" - }, - "pin2": { "compName": "WireCrossPoint#13", "pinName": "" }, + "pin2": { + "compName": "dff16_invwe#0", + "pinName": "D" + }, "name": "unnamedWire#289", "path": [] }, @@ -4134,6 +4299,42 @@ "name": "unnamedWire#316", "path": [] }, + { + "pin1": { + "compName": "WireCrossPoint#26", + "pinName": "" + }, + "pin2": { + "compName": "Am2901#0", + "pinName": "I" + }, + "name": "unnamedWire#317", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#27", + "pinName": "" + }, + "pin2": { + "compName": "Am2901#1", + "pinName": "I" + }, + "name": "unnamedWire#318", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#28", + "pinName": "" + }, + "pin2": { + "compName": "Am2901#2", + "pinName": "I" + }, + "name": "unnamedWire#319", + "path": [] + }, { "pin1": { "compName": "WireCrossPoint#1", @@ -4146,6 +4347,126 @@ "name": "unnamedWire#32", "path": [] }, + { + "pin1": { + "compName": "WireCrossPoint#28", + "pinName": "" + }, + "pin2": { + "compName": "Am2901#3", + "pinName": "I" + }, + "name": "unnamedWire#320", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#38", + "pinName": "I" + }, + "pin2": { + "compName": "Am2901#3", + "pinName": "Y" + }, + "name": "unnamedWire#321", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#39", + "pinName": "I" + }, + "pin2": { + "compName": "Am2901#2", + "pinName": "Y" + }, + "name": "unnamedWire#322", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#40", + "pinName": "I" + }, + "pin2": { + "compName": "Am2901#1", + "pinName": "Y" + }, + "name": "unnamedWire#323", + "path": [] + }, + { + "pin1": { + "compName": "Am2901#0", + "pinName": "Y" + }, + "pin2": { + "compName": "Splitter#41", + "pinName": "I" + }, + "name": "unnamedWire#324", + "path": [] + }, + { + "pin1": { + "compName": "Am2901#0", + "pinName": "D" + }, + "pin2": { + "compName": "Splitter#45", + "pinName": "I" + }, + "name": "unnamedWire#325", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#44", + "pinName": "I" + }, + "pin2": { + "compName": "Am2901#1", + "pinName": "D" + }, + "name": "unnamedWire#326", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#43", + "pinName": "I" + }, + "pin2": { + "compName": "Am2901#2", + "pinName": "D" + }, + "name": "unnamedWire#327", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#42", + "pinName": "I" + }, + "pin2": { + "compName": "Am2901#3", + "pinName": "D" + }, + "name": "unnamedWire#328", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#18", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#29", + "pinName": "" + }, + "name": "unnamedWire#329", + "path": [] + }, { "pin1": { "compName": "Am2901#0", @@ -4158,6 +4479,90 @@ "name": "unnamedWire#33", "path": [] }, + { + "pin1": { + "compName": "WireCrossPoint#18", + "pinName": "" + }, + "pin2": { + "compName": "mux1_16#0", + "pinName": "I0" + }, + "name": "unnamedWire#330", + "path": [] + }, + { + "pin1": { + "compName": "dff16#0", + "pinName": "C" + }, + "pin2": { + "compName": "ManualSwitch#4", + "pinName": "" + }, + "name": "unnamedWire#331", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#29", + "pinName": "" + }, + "pin2": { + "compName": "BitDisplay#1", + "pinName": "" + }, + "name": "unnamedWire#332", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#19", + "pinName": "" + }, + "pin2": { + "compName": "BitDisplay#2", + "pinName": "" + }, + "name": "unnamedWire#333", + "path": [] + }, + { + "pin1": { + "compName": "ManualSwitch#5", + "pinName": "" + }, + "pin2": { + "compName": "TriStateBuffer#4", + "pinName": "EN" + }, + "name": "unnamedWire#334", + "path": [] + }, + { + "pin1": { + "compName": "TriStateBuffer#4", + "pinName": "IN" + }, + "pin2": { + "compName": "ManualSwitch#6", + "pinName": "" + }, + "name": "unnamedWire#335", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#29", + "pinName": "" + }, + "pin2": { + "compName": "TriStateBuffer#4", + "pinName": "OUT" + }, + "name": "unnamedWire#336", + "path": [] + }, { "pin1": { "compName": "Am2910#0", -- 2.17.1