Reimplemented mux1_4 using multibit wires
[Mograsim.git] / plugins / net.mograsim.logic.model.am2900 / components / net / mograsim / logic / model / am2900 / components / mux1_4.json
1 {
2   "width": 50.0,
3   "height": 80.0,
4   "interfacePins": [
5     {
6       "location": {
7         "x": 0.0,
8         "y": 20.0
9       },
10       "name": "I0",
11       "logicWidth": 4,
12       "usage": "INPUT"
13     },
14     {
15       "location": {
16         "x": 0.0,
17         "y": 50.0
18       },
19       "name": "I1",
20       "logicWidth": 4,
21       "usage": "INPUT"
22     },
23     {
24       "location": {
25         "x": 0.0,
26         "y": 5.0
27       },
28       "name": "S0",
29       "logicWidth": 1,
30       "usage": "INPUT"
31     },
32     {
33       "location": {
34         "x": 50.0,
35         "y": 20.0
36       },
37       "name": "Y",
38       "logicWidth": 4,
39       "usage": "OUTPUT"
40     }
41   ],
42   "innerScale": 0.4,
43   "submodel": {
44     "components": [
45       {
46         "id": "NandGate",
47         "name": "NandGate#0",
48         "pos": {
49           "x": 20.0,
50           "y": 7.5
51         },
52         "params": 1
53       },
54       {
55         "id": "Splitter",
56         "name": "Splitter#0",
57         "pos": {
58           "x": 5.0,
59           "y": 35.0
60         },
61         "params": {
62           "logicWidth": 4,
63           "orientation": "RIGHT"
64         }
65       },
66       {
67         "id": "Splitter",
68         "name": "Splitter#1",
69         "pos": {
70           "x": 110.0,
71           "y": 35.0
72         },
73         "params": {
74           "logicWidth": 4,
75           "orientation": "LEFT"
76         }
77       },
78       {
79         "id": "Splitter",
80         "name": "Splitter#2",
81         "pos": {
82           "x": 5.0,
83           "y": 110.0
84         },
85         "params": {
86           "logicWidth": 4,
87           "orientation": "RIGHT"
88         }
89       },
90       {
91         "id": "WireCrossPoint",
92         "name": "WireCrossPoint#0",
93         "pos": {
94           "x": 14.0,
95           "y": 11.5
96         },
97         "params": 1
98       },
99       {
100         "id": "WireCrossPoint",
101         "name": "WireCrossPoint#1",
102         "pos": {
103           "x": 44.0,
104           "y": 19.0
105         },
106         "params": 1
107       },
108       {
109         "id": "WireCrossPoint",
110         "name": "WireCrossPoint#2",
111         "pos": {
112           "x": 44.0,
113           "y": 64.0
114         },
115         "params": 1
116       },
117       {
118         "id": "WireCrossPoint",
119         "name": "WireCrossPoint#3",
120         "pos": {
121           "x": 44.0,
122           "y": 109.0
123         },
124         "params": 1
125       },
126       {
127         "id": "WireCrossPoint",
128         "name": "WireCrossPoint#4",
129         "pos": {
130           "x": 49.0,
131           "y": 29.0
132         },
133         "params": 1
134       },
135       {
136         "id": "WireCrossPoint",
137         "name": "WireCrossPoint#5",
138         "pos": {
139           "x": 49.0,
140           "y": 74.0
141         },
142         "params": 1
143       },
144       {
145         "id": "WireCrossPoint",
146         "name": "WireCrossPoint#6",
147         "pos": {
148           "x": 49.0,
149           "y": 119.0
150         },
151         "params": 1
152       },
153       {
154         "id": "sel1",
155         "name": "sel1#0",
156         "pos": {
157           "x": 55.0,
158           "y": 15.0
159         }
160       },
161       {
162         "id": "sel1",
163         "name": "sel1#1",
164         "pos": {
165           "x": 55.0,
166           "y": 60.0
167         }
168       },
169       {
170         "id": "sel1",
171         "name": "sel1#2",
172         "pos": {
173           "x": 55.0,
174           "y": 105.0
175         }
176       },
177       {
178         "id": "sel1",
179         "name": "sel1#3",
180         "pos": {
181           "x": 55.0,
182           "y": 150.0
183         }
184       }
185     ],
186     "wires": [
187       {
188         "pin1": {
189           "compName": "_submodelinterface",
190           "pinName": "S0"
191         },
192         "pin2": {
193           "compName": "WireCrossPoint#0",
194           "pinName": ""
195         },
196         "name": "unnamedWire#0",
197         "path": []
198       },
199       {
200         "pin1": {
201           "compName": "WireCrossPoint#0",
202           "pinName": ""
203         },
204         "pin2": {
205           "compName": "NandGate#0",
206           "pinName": "A"
207         },
208         "name": "unnamedWire#1",
209         "path": []
210       },
211       {
212         "pin1": {
213           "compName": "_submodelinterface",
214           "pinName": "I0"
215         },
216         "pin2": {
217           "compName": "Splitter#0",
218           "pinName": "I"
219         },
220         "name": "unnamedWire#2",
221         "path": []
222       },
223       {
224         "pin1": {
225           "compName": "Splitter#2",
226           "pinName": "I"
227         },
228         "pin2": {
229           "compName": "_submodelinterface",
230           "pinName": "I1"
231         },
232         "name": "unnamedWire#3",
233         "path": []
234       },
235       {
236         "pin1": {
237           "compName": "Splitter#1",
238           "pinName": "I"
239         },
240         "pin2": {
241           "compName": "_submodelinterface",
242           "pinName": "Y"
243         },
244         "name": "unnamedWire#4",
245         "path": []
246       },
247       {
248         "pin1": {
249           "compName": "NandGate#0",
250           "pinName": "Y"
251         },
252         "pin2": {
253           "compName": "WireCrossPoint#1",
254           "pinName": ""
255         },
256         "name": "unnamedWire#5",
257         "path": [
258           {
259             "x": 45.0,
260             "y": 17.5
261           }
262         ]
263       },
264       {
265         "pin1": {
266           "compName": "WireCrossPoint#1",
267           "pinName": ""
268         },
269         "pin2": {
270           "compName": "sel1#0",
271           "pinName": "S1"
272         },
273         "name": "unnamedWire#6",
274         "path": []
275       },
276       {
277         "pin1": {
278           "compName": "WireCrossPoint#1",
279           "pinName": ""
280         },
281         "pin2": {
282           "compName": "WireCrossPoint#2",
283           "pinName": ""
284         },
285         "name": "unnamedWire#7",
286         "path": []
287       },
288       {
289         "pin1": {
290           "compName": "WireCrossPoint#2",
291           "pinName": ""
292         },
293         "pin2": {
294           "compName": "sel1#1",
295           "pinName": "S1"
296         },
297         "name": "unnamedWire#8",
298         "path": []
299       },
300       {
301         "pin1": {
302           "compName": "WireCrossPoint#2",
303           "pinName": ""
304         },
305         "pin2": {
306           "compName": "WireCrossPoint#3",
307           "pinName": ""
308         },
309         "name": "unnamedWire#9",
310         "path": []
311       },
312       {
313         "pin1": {
314           "compName": "WireCrossPoint#3",
315           "pinName": ""
316         },
317         "pin2": {
318           "compName": "sel1#2",
319           "pinName": "S1"
320         },
321         "name": "unnamedWire#10",
322         "path": []
323       },
324       {
325         "pin1": {
326           "compName": "WireCrossPoint#3",
327           "pinName": ""
328         },
329         "pin2": {
330           "compName": "sel1#3",
331           "pinName": "S1"
332         },
333         "name": "unnamedWire#11",
334         "path": [
335           {
336             "x": 45.0,
337             "y": 155.0
338           }
339         ]
340       },
341       {
342         "pin1": {
343           "compName": "WireCrossPoint#4",
344           "pinName": ""
345         },
346         "pin2": {
347           "compName": "WireCrossPoint#5",
348           "pinName": ""
349         },
350         "name": "unnamedWire#12",
351         "path": []
352       },
353       {
354         "pin1": {
355           "compName": "WireCrossPoint#4",
356           "pinName": ""
357         },
358         "pin2": {
359           "compName": "sel1#0",
360           "pinName": "S2"
361         },
362         "name": "unnamedWire#13",
363         "path": []
364       },
365       {
366         "pin1": {
367           "compName": "WireCrossPoint#5",
368           "pinName": ""
369         },
370         "pin2": {
371           "compName": "WireCrossPoint#6",
372           "pinName": ""
373         },
374         "name": "unnamedWire#14",
375         "path": []
376       },
377       {
378         "pin1": {
379           "compName": "WireCrossPoint#6",
380           "pinName": ""
381         },
382         "pin2": {
383           "compName": "sel1#2",
384           "pinName": "S2"
385         },
386         "name": "unnamedWire#15",
387         "path": []
388       },
389       {
390         "pin1": {
391           "compName": "WireCrossPoint#6",
392           "pinName": ""
393         },
394         "pin2": {
395           "compName": "sel1#3",
396           "pinName": "S2"
397         },
398         "name": "unnamedWire#16",
399         "path": [
400           {
401             "x": 50.0,
402             "y": 165.0
403           }
404         ]
405       },
406       {
407         "pin1": {
408           "compName": "WireCrossPoint#5",
409           "pinName": ""
410         },
411         "pin2": {
412           "compName": "sel1#1",
413           "pinName": "S2"
414         },
415         "name": "unnamedWire#17",
416         "path": []
417       },
418       {
419         "pin1": {
420           "compName": "WireCrossPoint#0",
421           "pinName": ""
422         },
423         "pin2": {
424           "compName": "NandGate#0",
425           "pinName": "B"
426         },
427         "name": "unnamedWire#18",
428         "path": [
429           {
430             "x": 15.0,
431             "y": 22.5
432           }
433         ]
434       },
435       {
436         "pin1": {
437           "compName": "WireCrossPoint#0",
438           "pinName": ""
439         },
440         "pin2": {
441           "compName": "WireCrossPoint#4",
442           "pinName": ""
443         },
444         "name": "unnamedWire#19",
445         "path": [
446           {
447             "x": 15.0,
448             "y": 5.0
449           },
450           {
451             "x": 50.0,
452             "y": 5.0
453           }
454         ]
455       },
456       {
457         "pin1": {
458           "compName": "Splitter#0",
459           "pinName": "O3"
460         },
461         "pin2": {
462           "compName": "sel1#0",
463           "pinName": "I1"
464         },
465         "name": "unnamedWire#20",
466         "path": [
467           {
468             "x": 40.0,
469             "y": 35.0
470           },
471           {
472             "x": 40.0,
473             "y": 40.0
474           }
475         ]
476       },
477       {
478         "pin1": {
479           "compName": "Splitter#0",
480           "pinName": "O2"
481         },
482         "pin2": {
483           "compName": "sel1#1",
484           "pinName": "I1"
485         },
486         "name": "unnamedWire#21",
487         "path": [
488           {
489             "x": 40.0,
490             "y": 45.0
491           },
492           {
493             "x": 40.0,
494             "y": 85.0
495           }
496         ]
497       },
498       {
499         "pin1": {
500           "compName": "Splitter#0",
501           "pinName": "O1"
502         },
503         "pin2": {
504           "compName": "sel1#2",
505           "pinName": "I1"
506         },
507         "name": "unnamedWire#22",
508         "path": [
509           {
510             "x": 35.0,
511             "y": 55.0
512           },
513           {
514             "x": 35.0,
515             "y": 130.0
516           }
517         ]
518       },
519       {
520         "pin1": {
521           "compName": "Splitter#0",
522           "pinName": "O0"
523         },
524         "pin2": {
525           "compName": "sel1#3",
526           "pinName": "I1"
527         },
528         "name": "unnamedWire#23",
529         "path": [
530           {
531             "x": 30.0,
532             "y": 65.0
533           },
534           {
535             "x": 30.0,
536             "y": 175.0
537           }
538         ]
539       },
540       {
541         "pin1": {
542           "compName": "sel1#3",
543           "pinName": "I2"
544         },
545         "pin2": {
546           "compName": "Splitter#2",
547           "pinName": "O0"
548         },
549         "name": "unnamedWire#24",
550         "path": [
551           {
552             "x": 20.0,
553             "y": 185.0
554           },
555           {
556             "x": 20.0,
557             "y": 140.0
558           }
559         ]
560       },
561       {
562         "pin1": {
563           "compName": "Splitter#2",
564           "pinName": "O1"
565         },
566         "pin2": {
567           "compName": "sel1#2",
568           "pinName": "I2"
569         },
570         "name": "unnamedWire#25",
571         "path": [
572           {
573             "x": 25.0,
574             "y": 130.0
575           },
576           {
577             "x": 25.0,
578             "y": 140.0
579           }
580         ]
581       },
582       {
583         "pin1": {
584           "compName": "sel1#1",
585           "pinName": "I2"
586         },
587         "pin2": {
588           "compName": "Splitter#2",
589           "pinName": "O2"
590         },
591         "name": "unnamedWire#26",
592         "path": [
593           {
594             "x": 25.0,
595             "y": 95.0
596           },
597           {
598             "x": 25.0,
599             "y": 120.0
600           }
601         ]
602       },
603       {
604         "pin1": {
605           "compName": "Splitter#2",
606           "pinName": "O3"
607         },
608         "pin2": {
609           "compName": "sel1#0",
610           "pinName": "I2"
611         },
612         "name": "unnamedWire#27",
613         "path": [
614           {
615             "x": 20.0,
616             "y": 110.0
617           },
618           {
619             "x": 20.0,
620             "y": 50.0
621           }
622         ]
623       },
624       {
625         "pin1": {
626           "compName": "Splitter#1",
627           "pinName": "O3"
628         },
629         "pin2": {
630           "compName": "sel1#0",
631           "pinName": "Y"
632         },
633         "name": "unnamedWire#28",
634         "path": [
635           {
636             "x": 95.0,
637             "y": 35.0
638           },
639           {
640             "x": 95.0,
641             "y": 20.0
642           }
643         ]
644       },
645       {
646         "pin1": {
647           "compName": "sel1#2",
648           "pinName": "Y"
649         },
650         "pin2": {
651           "compName": "Splitter#1",
652           "pinName": "O1"
653         },
654         "name": "unnamedWire#29",
655         "path": [
656           {
657             "x": 100.0,
658             "y": 110.0
659           },
660           {
661             "x": 100.0,
662             "y": 55.0
663           }
664         ]
665       },
666       {
667         "pin1": {
668           "compName": "Splitter#1",
669           "pinName": "O2"
670         },
671         "pin2": {
672           "compName": "sel1#1",
673           "pinName": "Y"
674         },
675         "name": "unnamedWire#30",
676         "path": [
677           {
678             "x": 95.0,
679             "y": 45.0
680           },
681           {
682             "x": 95.0,
683             "y": 65.0
684           }
685         ]
686       },
687       {
688         "pin1": {
689           "compName": "sel1#3",
690           "pinName": "Y"
691         },
692         "pin2": {
693           "compName": "Splitter#1",
694           "pinName": "O0"
695         },
696         "name": "unnamedWire#31",
697         "path": [
698           {
699             "x": 105.0,
700             "y": 155.0
701           },
702           {
703             "x": 105.0,
704             "y": 65.0
705           }
706         ]
707       }
708     ],
709     "version": "0.1.1"
710   },
711   "symbolRendererSnippetID": "simpleRectangularLike",
712   "symbolRendererParams": {
713     "centerText": "mux1_4",
714     "centerTextHeight": 5.0,
715     "horizontalComponentCenter": 17.5,
716     "pinLabelHeight": 3.5,
717     "pinLabelMargin": 0.5
718   },
719   "outlineRendererSnippetID": "default",
720   "highLevelStateHandlerSnippetID": "default",
721   "version": "0.1.5"
722 }