X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=plugins%2Fnet.mograsim.logic.model.am2900%2Fcomponents%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2Fcomponents%2Fmux1_4.json;h=980b8dfb2bcb399199c598c41f096d508161f2ba;hb=de50afe9150ec4d6430eb4347768798a40993ced;hp=b5b16b89d2b2af10ed7cf2dcf79f57763b2421e3;hpb=7d05144c25daa53e60fc9ed9fd503546a86567f8;p=Mograsim.git diff --git a/plugins/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux1_4.json b/plugins/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux1_4.json index b5b16b89..980b8dfb 100644 --- a/plugins/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux1_4.json +++ b/plugins/net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux1_4.json @@ -1,77 +1,23 @@ { - "width": 35.0, - "height": 90.0, + "width": 50.0, + "height": 80.0, "interfacePins": [ { "location": { "x": 0.0, - "y": 15.0 + "y": 20.0 }, - "name": "I0_1", - "logicWidth": 1, - "usage": "INPUT" - }, - { - "location": { - "x": 0.0, - "y": 25.0 - }, - "name": "I0_2", - "logicWidth": 1, - "usage": "INPUT" - }, - { - "location": { - "x": 0.0, - "y": 35.0 - }, - "name": "I0_3", - "logicWidth": 1, - "usage": "INPUT" - }, - { - "location": { - "x": 0.0, - "y": 45.0 - }, - "name": "I0_4", - "logicWidth": 1, - "usage": "INPUT" - }, - { - "location": { - "x": 0.0, - "y": 55.0 - }, - "name": "I1_1", - "logicWidth": 1, + "name": "I0", + "logicWidth": 4, "usage": "INPUT" }, { "location": { "x": 0.0, - "y": 65.0 + "y": 50.0 }, - "name": "I1_2", - "logicWidth": 1, - "usage": "INPUT" - }, - { - "location": { - "x": 0.0, - "y": 75.0 - }, - "name": "I1_3", - "logicWidth": 1, - "usage": "INPUT" - }, - { - "location": { - "x": 0.0, - "y": 85.0 - }, - "name": "I1_4", - "logicWidth": 1, + "name": "I1", + "logicWidth": 4, "usage": "INPUT" }, { @@ -85,49 +31,67 @@ }, { "location": { - "x": 35.0, - "y": 5.0 + "x": 50.0, + "y": 20.0 }, - "name": "Y1", - "logicWidth": 1, - "usage": "OUTPUT" - }, - { - "location": { - "x": 35.0, - "y": 15.0 - }, - "name": "Y2", - "logicWidth": 1, - "usage": "OUTPUT" - }, - { - "location": { - "x": 35.0, - "y": 25.0 - }, - "name": "Y3", - "logicWidth": 1, - "usage": "OUTPUT" - }, - { - "location": { - "x": 35.0, - "y": 35.0 - }, - "name": "Y4", - "logicWidth": 1, + "name": "Y", + "logicWidth": 4, "usage": "OUTPUT" } ], "innerScale": 0.4, "submodel": { "components": [ + { + "id": "NandGate", + "name": "NandGate#0", + "pos": { + "x": 20.0, + "y": 7.5 + }, + "params": 1 + }, + { + "id": "Splitter", + "name": "Splitter#0", + "pos": { + "x": 5.0, + "y": 35.0 + }, + "params": { + "logicWidth": 4, + "orientation": "RIGHT" + } + }, + { + "id": "Splitter", + "name": "Splitter#1", + "pos": { + "x": 110.0, + "y": 35.0 + }, + "params": { + "logicWidth": 4, + "orientation": "LEFT" + } + }, + { + "id": "Splitter", + "name": "Splitter#2", + "pos": { + "x": 5.0, + "y": 110.0 + }, + "params": { + "logicWidth": 4, + "orientation": "RIGHT" + } + }, { "id": "WireCrossPoint", "name": "WireCrossPoint#0", "pos": { - "x": 24.0, + "x": 14.0, "y": 11.5 }, "params": 1 @@ -136,8 +100,8 @@ "id": "WireCrossPoint", "name": "WireCrossPoint#1", "pos": { - "x": 24.0, - "y": 46.5 + "x": 44.0, + "y": 19.0 }, "params": 1 }, @@ -145,41 +109,77 @@ "id": "WireCrossPoint", "name": "WireCrossPoint#2", "pos": { - "x": 24.0, - "y": 81.5 + "x": 44.0, + "y": 64.0 }, "params": 1 }, { - "id": "mux1", - "name": "mux1#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", "pos": { - "x": 30.0, - "y": 7.5 + "x": 44.0, + "y": 109.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#4", + "pos": { + "x": 49.0, + "y": 29.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#5", + "pos": { + "x": 49.0, + "y": 74.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#6", + "pos": { + "x": 49.0, + "y": 119.0 + }, + "params": 1 + }, + { + "id": "sel1", + "name": "sel1#0", + "pos": { + "x": 55.0, + "y": 15.0 } }, { - "id": "mux1", - "name": "mux1#1", + "id": "sel1", + "name": "sel1#1", "pos": { - "x": 30.0, - "y": 42.5 + "x": 55.0, + "y": 60.0 } }, { - "id": "mux1", - "name": "mux1#2", + "id": "sel1", + "name": "sel1#2", "pos": { - "x": 30.0, - "y": 77.5 + "x": 55.0, + "y": 105.0 } }, { - "id": "mux1", - "name": "mux1#3", + "id": "sel1", + "name": "sel1#3", "pos": { - "x": 30.0, - "y": 112.5 + "x": 55.0, + "y": 150.0 } } ], @@ -202,12 +202,77 @@ "pinName": "" }, "pin2": { - "compName": "mux1#0", - "pinName": "S0" + "compName": "NandGate#0", + "pinName": "A" }, "name": "unnamedWire#1", "path": [] }, + { + "pin1": { + "compName": "_submodelinterface", + "pinName": "I0" + }, + "pin2": { + "compName": "Splitter#0", + "pinName": "I" + }, + "name": "unnamedWire#2", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#2", + "pinName": "I" + }, + "pin2": { + "compName": "_submodelinterface", + "pinName": "I1" + }, + "name": "unnamedWire#3", + "path": [] + }, + { + "pin1": { + "compName": "Splitter#1", + "pinName": "I" + }, + "pin2": { + "compName": "_submodelinterface", + "pinName": "Y" + }, + "name": "unnamedWire#4", + "path": [] + }, + { + "pin1": { + "compName": "NandGate#0", + "pinName": "Y" + }, + "pin2": { + "compName": "WireCrossPoint#1", + "pinName": "" + }, + "name": "unnamedWire#5", + "path": [ + { + "x": 45.0, + "y": 17.5 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#1", + "pinName": "" + }, + "pin2": { + "compName": "sel1#0", + "pinName": "S1" + }, + "name": "unnamedWire#6", + "path": [] + }, { "pin1": { "compName": "WireCrossPoint#1", @@ -217,7 +282,7 @@ "compName": "WireCrossPoint#2", "pinName": "" }, - "name": "unnamedWire#10", + "name": "unnamedWire#7", "path": [] }, { @@ -226,265 +291,419 @@ "pinName": "" }, "pin2": { - "compName": "mux1#2", - "pinName": "S0" + "compName": "sel1#1", + "pinName": "S1" }, - "name": "unnamedWire#11", + "name": "unnamedWire#8", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I0_3" + "compName": "WireCrossPoint#2", + "pinName": "" }, "pin2": { - "compName": "mux1#2", - "pinName": "I0" + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#12", + "name": "unnamedWire#9", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#3", + "pinName": "" + }, + "pin2": { + "compName": "sel1#2", + "pinName": "S1" + }, + "name": "unnamedWire#10", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#3", + "pinName": "" + }, + "pin2": { + "compName": "sel1#3", + "pinName": "S1" + }, + "name": "unnamedWire#11", "path": [ { - "x": 5.0, - "y": 87.5 - }, - { - "x": 5.0, - "y": 92.5 + "x": 45.0, + "y": 155.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I1_3" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { - "compName": "mux1#2", - "pinName": "I1" + "compName": "WireCrossPoint#5", + "pinName": "" + }, + "name": "unnamedWire#12", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#4", + "pinName": "" + }, + "pin2": { + "compName": "sel1#0", + "pinName": "S2" }, "name": "unnamedWire#13", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#5", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#6", + "pinName": "" + }, + "name": "unnamedWire#14", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#6", + "pinName": "" + }, + "pin2": { + "compName": "sel1#2", + "pinName": "S2" + }, + "name": "unnamedWire#15", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#6", + "pinName": "" + }, + "pin2": { + "compName": "sel1#3", + "pinName": "S2" + }, + "name": "unnamedWire#16", "path": [ { - "x": 20.0, - "y": 187.5 - }, - { - "x": 20.0, - "y": 102.5 + "x": 50.0, + "y": 165.0 } ] }, { "pin1": { - "compName": "mux1#2", - "pinName": "Y" + "compName": "WireCrossPoint#5", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Y3" + "compName": "sel1#1", + "pinName": "S2" }, - "name": "unnamedWire#14" + "name": "unnamedWire#17", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#0", "pinName": "" }, "pin2": { - "compName": "mux1#3", - "pinName": "S0" + "compName": "NandGate#0", + "pinName": "B" }, - "name": "unnamedWire#15", + "name": "unnamedWire#18", "path": [ { - "x": 25.0, - "y": 117.5 + "x": 15.0, + "y": 22.5 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I0_4" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "mux1#3", - "pinName": "I0" + "compName": "WireCrossPoint#4", + "pinName": "" }, - "name": "unnamedWire#16", + "name": "unnamedWire#19", "path": [ { - "x": 5.0, - "y": 112.5 + "x": 15.0, + "y": 5.0 }, { - "x": 5.0, - "y": 127.5 + "x": 50.0, + "y": 5.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I1_4" + "compName": "Splitter#0", + "pinName": "O3" }, "pin2": { - "compName": "mux1#3", + "compName": "sel1#0", "pinName": "I1" }, - "name": "unnamedWire#17", + "name": "unnamedWire#20", "path": [ { - "x": 25.0, - "y": 212.5 + "x": 40.0, + "y": 35.0 }, { - "x": 25.0, - "y": 137.5 + "x": 40.0, + "y": 40.0 } ] }, { "pin1": { - "compName": "mux1#3", - "pinName": "Y" + "compName": "Splitter#0", + "pinName": "O2" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Y4" + "compName": "sel1#1", + "pinName": "I1" }, - "name": "unnamedWire#18" + "name": "unnamedWire#21", + "path": [ + { + "x": 40.0, + "y": 45.0 + }, + { + "x": 40.0, + "y": 85.0 + } + ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I0_1" + "compName": "Splitter#0", + "pinName": "O1" }, "pin2": { - "compName": "mux1#0", - "pinName": "I0" + "compName": "sel1#2", + "pinName": "I1" }, - "name": "unnamedWire#2", + "name": "unnamedWire#22", "path": [ { - "x": 5.0, - "y": 37.5 + "x": 35.0, + "y": 55.0 }, { - "x": 5.0, - "y": 22.5 + "x": 35.0, + "y": 130.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I1_1" + "compName": "Splitter#0", + "pinName": "O0" }, "pin2": { - "compName": "mux1#0", + "compName": "sel1#3", "pinName": "I1" }, - "name": "unnamedWire#3", + "name": "unnamedWire#23", "path": [ { - "x": 10.0, - "y": 137.5 + "x": 30.0, + "y": 65.0 }, { - "x": 10.0, - "y": 32.5 + "x": 30.0, + "y": 175.0 } ] }, { "pin1": { - "compName": "mux1#0", - "pinName": "Y" + "compName": "sel1#3", + "pinName": "I2" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Y1" + "compName": "Splitter#2", + "pinName": "O0" }, - "name": "unnamedWire#4", - "path": [] + "name": "unnamedWire#24", + "path": [ + { + "x": 20.0, + "y": 185.0 + }, + { + "x": 20.0, + "y": 140.0 + } + ] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "Splitter#2", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "sel1#2", + "pinName": "I2" }, - "name": "unnamedWire#5", - "path": [] + "name": "unnamedWire#25", + "path": [ + { + "x": 25.0, + "y": 130.0 + }, + { + "x": 25.0, + "y": 140.0 + } + ] }, { "pin1": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "sel1#1", + "pinName": "I2" }, "pin2": { - "compName": "mux1#1", - "pinName": "S0" + "compName": "Splitter#2", + "pinName": "O2" }, - "name": "unnamedWire#6", - "path": [] + "name": "unnamedWire#26", + "path": [ + { + "x": 25.0, + "y": 95.0 + }, + { + "x": 25.0, + "y": 120.0 + } + ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I0_2" + "compName": "Splitter#2", + "pinName": "O3" }, "pin2": { - "compName": "mux1#1", - "pinName": "I0" + "compName": "sel1#0", + "pinName": "I2" }, - "name": "unnamedWire#7", + "name": "unnamedWire#27", "path": [ { - "x": 5.0, - "y": 62.5 + "x": 20.0, + "y": 110.0 }, { - "x": 5.0, - "y": 57.5 + "x": 20.0, + "y": 50.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I1_2" + "compName": "Splitter#1", + "pinName": "O3" }, "pin2": { - "compName": "mux1#1", - "pinName": "I1" + "compName": "sel1#0", + "pinName": "Y" }, - "name": "unnamedWire#8", + "name": "unnamedWire#28", "path": [ { - "x": 15.0, - "y": 162.5 + "x": 95.0, + "y": 35.0 }, { - "x": 15.0, - "y": 67.5 + "x": 95.0, + "y": 20.0 } ] }, { "pin1": { - "compName": "mux1#1", + "compName": "sel1#2", "pinName": "Y" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Y2" + "compName": "Splitter#1", + "pinName": "O1" + }, + "name": "unnamedWire#29", + "path": [ + { + "x": 100.0, + "y": 110.0 + }, + { + "x": 100.0, + "y": 55.0 + } + ] + }, + { + "pin1": { + "compName": "Splitter#1", + "pinName": "O2" }, - "name": "unnamedWire#9" + "pin2": { + "compName": "sel1#1", + "pinName": "Y" + }, + "name": "unnamedWire#30", + "path": [ + { + "x": 95.0, + "y": 45.0 + }, + { + "x": 95.0, + "y": 65.0 + } + ] + }, + { + "pin1": { + "compName": "sel1#3", + "pinName": "Y" + }, + "pin2": { + "compName": "Splitter#1", + "pinName": "O0" + }, + "name": "unnamedWire#31", + "path": [ + { + "x": 105.0, + "y": 155.0 + }, + { + "x": 105.0, + "y": 65.0 + } + ] } ], "version": "0.1.1"