--- /dev/null
+mograsim version: 0.1.2
+{
+ "type": "SimpleRectangularSubmodelComponent",
+ "name": "GUIAm2901SourceDecode",
+ "width": 35.0,
+ "height": 50.0,
+ "interfacePins": [
+ {
+ "location": {
+ "x": 35.0,
+ "y": 45.0
+ },
+ "name": "RD",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 0.0,
+ "y": 25.0
+ },
+ "name": "I0",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 0.0,
+ "y": 15.0
+ },
+ "name": "I1",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 0.0,
+ "y": 5.0
+ },
+ "name": "I2",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 35.0,
+ "y": 5.0
+ },
+ "name": "SQ",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 35.0,
+ "y": 35.0
+ },
+ "name": "SA",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 35.0,
+ "y": 15.0
+ },
+ "name": "RA",
+ "logicWidth": 1
+ },
+ {
+ "location": {
+ "x": 35.0,
+ "y": 25.0
+ },
+ "name": "SB",
+ "logicWidth": 1
+ }
+ ],
+ "composition": {
+ "innerScale": 0.25,
+ "subComps": [
+ {
+ "pos": {
+ "x": 10.0,
+ "y": 10.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 10.0,
+ "y": 50.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 10.0,
+ "y": 90.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 40.0,
+ "y": 10.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 40.0,
+ "y": 50.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 40.0,
+ "y": 90.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 40.0,
+ "y": 130.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 40.0,
+ "y": 170.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 70.0,
+ "y": 10.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 70.0,
+ "y": 50.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 70.0,
+ "y": 90.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 70.0,
+ "y": 130.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 70.0,
+ "y": 170.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 100.0,
+ "y": 10.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 100.0,
+ "y": 170.0
+ },
+ "name": "GUINandGate",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 4.0,
+ "y": 19.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 6.5,
+ "y": 19.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 4.0,
+ "y": 144.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 6.5,
+ "y": 59.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 6.5,
+ "y": 99.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 6.5,
+ "y": 104.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 31.5,
+ "y": 54.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 34.0,
+ "y": 59.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 34.0,
+ "y": 64.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 34.0,
+ "y": 134.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 36.5,
+ "y": 99.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 64.0,
+ "y": 59.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 64.0,
+ "y": 99.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 64.0,
+ "y": 139.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 94.0,
+ "y": 19.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ },
+ {
+ "pos": {
+ "x": 94.0,
+ "y": 179.0
+ },
+ "name": "WireCrossPoint",
+ "params": {
+ "logicWidth": 1
+ }
+ }
+ ],
+ "innerWires": [
+ {
+ "pin1": {
+ "compId": 0,
+ "pinName": "I2"
+ },
+ "pin2": {
+ "compId": 16,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 16,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 4,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 5.0,
+ "y": 5.0
+ },
+ {
+ "x": 35.0,
+ "y": 5.0
+ },
+ {
+ "x": 35.0,
+ "y": 15.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 16,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 17,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 17,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 1,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 7.5,
+ "y": 15.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 17,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 1,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 7.5,
+ "y": 25.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 16,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 18,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 18,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 7,
+ "pinName": "B"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 18,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 13,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 5.0,
+ "y": 195.0
+ },
+ {
+ "x": 65.0,
+ "y": 195.0
+ },
+ {
+ "x": 65.0,
+ "y": 185.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 0,
+ "pinName": "I1"
+ },
+ "pin2": {
+ "compId": 19,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 19,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 2,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 7.5,
+ "y": 55.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 19,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 2,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 7.5,
+ "y": 65.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 0,
+ "pinName": "I0"
+ },
+ "pin2": {
+ "compId": 20,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 20,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 3,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 7.5,
+ "y": 95.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 20,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 21,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 21,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 3,
+ "pinName": "B"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 21,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 6,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 7.5,
+ "y": 112.5
+ },
+ {
+ "x": 32.5,
+ "y": 112.5
+ },
+ {
+ "x": 32.5,
+ "y": 105.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 1,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 22,
+ "pinName": ""
+ },
+ "path": [
+ {
+ "x": 32.5,
+ "y": 20.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 22,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 5,
+ "pinName": "A"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 22,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 6,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 32.5,
+ "y": 95.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 2,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 23,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 23,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 4,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 35.0,
+ "y": 25.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 23,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 24,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 24,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 5,
+ "pinName": "B"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 24,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 25,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 25,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 7,
+ "pinName": "A"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 25,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 8,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 35.0,
+ "y": 175.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 3,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 26,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 26,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 9,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 37.5,
+ "y": 35.0
+ },
+ {
+ "x": 65.0,
+ "y": 35.0
+ },
+ {
+ "x": 65.0,
+ "y": 25.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 26,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 8,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 37.5,
+ "y": 185.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 4,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 9,
+ "pinName": "A"
+ }
+ },
+ {
+ "pin1": {
+ "compId": 5,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 27,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 27,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 10,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 65.0,
+ "y": 55.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 27,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 10,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 65.0,
+ "y": 65.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 6,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 28,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 28,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 11,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 65.0,
+ "y": 95.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 28,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 11,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 65.0,
+ "y": 105.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 7,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 29,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 29,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 12,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 65.0,
+ "y": 135.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 29,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 12,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 65.0,
+ "y": 145.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 8,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 13,
+ "pinName": "A"
+ }
+ },
+ {
+ "pin1": {
+ "compId": 9,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 30,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 30,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 14,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 95.0,
+ "y": 15.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 30,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 14,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 95.0,
+ "y": 25.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 10,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 0,
+ "pinName": "RA"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 11,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 0,
+ "pinName": "SB"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 12,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 0,
+ "pinName": "SA"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 13,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 31,
+ "pinName": ""
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 31,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 15,
+ "pinName": "A"
+ },
+ "path": [
+ {
+ "x": 95.0,
+ "y": 175.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 31,
+ "pinName": ""
+ },
+ "pin2": {
+ "compId": 15,
+ "pinName": "B"
+ },
+ "path": [
+ {
+ "x": 95.0,
+ "y": 185.0
+ }
+ ]
+ },
+ {
+ "pin1": {
+ "compId": 14,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 0,
+ "pinName": "SQ"
+ },
+ "path": []
+ },
+ {
+ "pin1": {
+ "compId": 15,
+ "pinName": "Y"
+ },
+ "pin2": {
+ "compId": 0,
+ "pinName": "RD"
+ },
+ "path": []
+ }
+ ]
+ },
+ "specialized": {
+ "input_count": [
+ "I2",
+ "I1",
+ "I0"
+ ],
+ "label": "Am2901SourceDecode",
+ "logic_width": 1,
+ "output_count": [
+ "SQ",
+ "RA",
+ "SB",
+ "SA",
+ "RD"
+ ]
+ }
+}
\ No newline at end of file