0ef5caa04bc64a01970ffe24f7110cb9e57ffb61
[Mograsim.git] /
1 {
2   "width": 50.0,
3   "height": 65.0,
4   "interfacePins": [
5     {
6       "location": {
7         "x": 0.0,
8         "y": 10.0
9       },
10       "name": "C",
11       "logicWidth": 1,
12       "usage": "INPUT"
13     },
14     {
15       "location": {
16         "x": 0.0,
17         "y": 50.0
18       },
19       "name": "CINV",
20       "logicWidth": 1,
21       "usage": "INPUT"
22     },
23     {
24       "location": {
25         "x": 0.0,
26         "y": 40.0
27       },
28       "name": "I",
29       "logicWidth": 4,
30       "usage": "INPUT"
31     },
32     {
33       "location": {
34         "x": 0.0,
35         "y": 30.0
36       },
37       "name": "M",
38       "logicWidth": 4,
39       "usage": "INPUT"
40     },
41     {
42       "location": {
43         "x": 0.0,
44         "y": 20.0
45       },
46       "name": "MUX",
47       "logicWidth": 2,
48       "usage": "INPUT"
49     },
50     {
51       "location": {
52         "x": 0.0,
53         "y": 60.0
54       },
55       "name": "OVRRET",
56       "logicWidth": 1,
57       "usage": "INPUT"
58     },
59     {
60       "location": {
61         "x": 50.0,
62         "y": 10.0
63       },
64       "name": "Q",
65       "logicWidth": 4,
66       "usage": "OUTPUT"
67     },
68     {
69       "location": {
70         "x": 20.0,
71         "y": 0.0
72       },
73       "name": "_EC",
74       "logicWidth": 1,
75       "usage": "INPUT"
76     },
77     {
78       "location": {
79         "x": 30.0,
80         "y": 0.0
81       },
82       "name": "_EN",
83       "logicWidth": 1,
84       "usage": "INPUT"
85     },
86     {
87       "location": {
88         "x": 40.0,
89         "y": 0.0
90       },
91       "name": "_EOVR",
92       "logicWidth": 1,
93       "usage": "INPUT"
94     },
95     {
96       "location": {
97         "x": 10.0,
98         "y": 0.0
99       },
100       "name": "_EZ",
101       "logicWidth": 1,
102       "usage": "INPUT"
103     }
104   ],
105   "innerScale": 0.2,
106   "submodel": {
107     "components": [
108       {
109         "id": "NandGate",
110         "name": "NandGate#0",
111         "pos": {
112           "x": 155.0,
113           "y": 135.0
114         },
115         "params": 1
116       },
117       {
118         "id": "NandGate",
119         "name": "NandGate#1",
120         "pos": {
121           "x": 125.0,
122           "y": 150.0
123         },
124         "params": 1
125       },
126       {
127         "id": "NandGate",
128         "name": "NandGate#2",
129         "pos": {
130           "x": 125.0,
131           "y": 130.0
132         },
133         "params": 1
134       },
135       {
136         "id": "Splitter",
137         "name": "Splitter#0",
138         "pos": {
139           "x": 5.0,
140           "y": 135.0
141         },
142         "params": {
143           "logicWidth": 4,
144           "orientation": "RIGHT"
145         }
146       },
147       {
148         "id": "Splitter",
149         "name": "Splitter#1",
150         "pos": {
151           "x": 5.0,
152           "y": 185.0
153         },
154         "params": {
155           "logicWidth": 4,
156           "orientation": "RIGHT"
157         }
158       },
159       {
160         "id": "Splitter",
161         "name": "Splitter#2",
162         "pos": {
163           "x": 5.0,
164           "y": 95.0
165         },
166         "params": {
167           "logicWidth": 2,
168           "orientation": "RIGHT"
169         }
170       },
171       {
172         "id": "Splitter",
173         "name": "Splitter#3",
174         "pos": {
175           "x": 230.0,
176           "y": 30.0
177         },
178         "params": {
179           "logicWidth": 4,
180           "orientation": "LEFT"
181         }
182       },
183       {
184         "id": "WireCrossPoint",
185         "name": "WireCrossPoint#0",
186         "pos": {
187           "x": 19.0,
188           "y": 119.0
189         },
190         "params": 1
191       },
192       {
193         "id": "WireCrossPoint",
194         "name": "WireCrossPoint#1",
195         "pos": {
196           "x": 59.0,
197           "y": 109.0
198         },
199         "params": 1
200       },
201       {
202         "id": "WireCrossPoint",
203         "name": "WireCrossPoint#2",
204         "pos": {
205           "x": 59.0,
206           "y": 99.0
207         },
208         "params": 1
209       },
210       {
211         "id": "WireCrossPoint",
212         "name": "WireCrossPoint#3",
213         "pos": {
214           "x": 224.0,
215           "y": 59.0
216         },
217         "params": 1
218       },
219       {
220         "id": "WireCrossPoint",
221         "name": "WireCrossPoint#4",
222         "pos": {
223           "x": 114.0,
224           "y": 134.0
225         },
226         "params": 1
227       },
228       {
229         "id": "WireCrossPoint",
230         "name": "WireCrossPoint#5",
231         "pos": {
232           "x": 59.0,
233           "y": 119.0
234         },
235         "params": 1
236       },
237       {
238         "id": "dff4_finewe",
239         "name": "dff4_finewe#0",
240         "pos": {
241           "x": 185.0,
242           "y": 25.0
243         }
244       },
245       {
246         "id": "mux1_4",
247         "name": "mux1_4#0",
248         "pos": {
249           "x": 25.0,
250           "y": 125.0
251         }
252       },
253       {
254         "id": "mux1_4",
255         "name": "mux1_4#1",
256         "pos": {
257           "x": 65.0,
258           "y": 75.0
259         }
260       },
261       {
262         "id": "xor",
263         "name": "xor#0",
264         "pos": {
265           "x": 130.0,
266           "y": 105.0
267         }
268       }
269     ],
270     "wires": [
271       {
272         "pin1": {
273           "compName": "dff4_finewe#0",
274           "pinName": "Q1"
275         },
276         "pin2": {
277           "compName": "Splitter#3",
278           "pinName": "O3"
279         },
280         "name": "unnamedWire#0",
281         "path": []
282       },
283       {
284         "pin1": {
285           "compName": "Splitter#3",
286           "pinName": "O2"
287         },
288         "pin2": {
289           "compName": "dff4_finewe#0",
290           "pinName": "Q2"
291         },
292         "name": "unnamedWire#1",
293         "path": []
294       },
295       {
296         "pin1": {
297           "compName": "Splitter#3",
298           "pinName": "O1"
299         },
300         "pin2": {
301           "compName": "dff4_finewe#0",
302           "pinName": "Q3"
303         },
304         "name": "unnamedWire#2",
305         "path": []
306       },
307       {
308         "pin1": {
309           "compName": "dff4_finewe#0",
310           "pinName": "Q4"
311         },
312         "pin2": {
313           "compName": "WireCrossPoint#3",
314           "pinName": ""
315         },
316         "name": "unnamedWire#3",
317         "path": []
318       },
319       {
320         "pin1": {
321           "compName": "Splitter#3",
322           "pinName": "I"
323         },
324         "pin2": {
325           "compName": "_submodelinterface",
326           "pinName": "Q"
327         },
328         "name": "unnamedWire#4",
329         "path": [
330           {
331             "x": 245.0,
332             "y": 45.0
333           },
334           {
335             "x": 245.0,
336             "y": 50.0
337           }
338         ]
339       },
340       {
341         "pin1": {
342           "compName": "_submodelinterface",
343           "pinName": "M"
344         },
345         "pin2": {
346           "compName": "Splitter#0",
347           "pinName": "I"
348         },
349         "name": "unnamedWire#5",
350         "path": []
351       },
352       {
353         "pin1": {
354           "compName": "_submodelinterface",
355           "pinName": "I"
356         },
357         "pin2": {
358           "compName": "Splitter#1",
359           "pinName": "I"
360         },
361         "name": "unnamedWire#6",
362         "path": []
363       },
364       {
365         "pin1": {
366           "compName": "Splitter#1",
367           "pinName": "O3"
368         },
369         "pin2": {
370           "compName": "mux1_4#0",
371           "pinName": "I1_1"
372         },
373         "name": "unnamedWire#7",
374         "path": [
375           {
376             "x": 20.0,
377             "y": 185.0
378           },
379           {
380             "x": 20.0,
381             "y": 180.0
382           }
383         ]
384       },
385       {
386         "pin1": {
387           "compName": "mux1_4#0",
388           "pinName": "I1_2"
389         },
390         "pin2": {
391           "compName": "Splitter#1",
392           "pinName": "O2"
393         },
394         "name": "unnamedWire#8",
395         "path": [
396           {
397             "x": 20.0,
398             "y": 190.0
399           },
400           {
401             "x": 20.0,
402             "y": 195.0
403           }
404         ]
405       },
406       {
407         "pin1": {
408           "compName": "Splitter#1",
409           "pinName": "O1"
410         },
411         "pin2": {
412           "compName": "mux1_4#0",
413           "pinName": "I1_3"
414         },
415         "name": "unnamedWire#9",
416         "path": [
417           {
418             "x": 20.0,
419             "y": 205.0
420           },
421           {
422             "x": 20.0,
423             "y": 200.0
424           }
425         ]
426       },
427       {
428         "pin1": {
429           "compName": "mux1_4#0",
430           "pinName": "I1_4"
431         },
432         "pin2": {
433           "compName": "Splitter#1",
434           "pinName": "O0"
435         },
436         "name": "unnamedWire#10",
437         "path": [
438           {
439             "x": 20.0,
440             "y": 210.0
441           },
442           {
443             "x": 20.0,
444             "y": 215.0
445           }
446         ]
447       },
448       {
449         "pin1": {
450           "compName": "WireCrossPoint#3",
451           "pinName": ""
452         },
453         "pin2": {
454           "compName": "Splitter#3",
455           "pinName": "O0"
456         },
457         "name": "unnamedWire#11",
458         "path": []
459       },
460       {
461         "pin1": {
462           "compName": "Splitter#0",
463           "pinName": "O0"
464         },
465         "pin2": {
466           "compName": "mux1_4#0",
467           "pinName": "I0_4"
468         },
469         "name": "unnamedWire#12",
470         "path": [
471           {
472             "x": 20.0,
473             "y": 165.0
474           },
475           {
476             "x": 20.0,
477             "y": 170.0
478           }
479         ]
480       },
481       {
482         "pin1": {
483           "compName": "Splitter#0",
484           "pinName": "O1"
485         },
486         "pin2": {
487           "compName": "mux1_4#0",
488           "pinName": "I0_3"
489         },
490         "name": "unnamedWire#13",
491         "path": [
492           {
493             "x": 20.0,
494             "y": 155.0
495           },
496           {
497             "x": 20.0,
498             "y": 160.0
499           }
500         ]
501       },
502       {
503         "pin1": {
504           "compName": "Splitter#0",
505           "pinName": "O2"
506         },
507         "pin2": {
508           "compName": "mux1_4#0",
509           "pinName": "I0_2"
510         },
511         "name": "unnamedWire#14",
512         "path": [
513           {
514             "x": 20.0,
515             "y": 145.0
516           },
517           {
518             "x": 20.0,
519             "y": 150.0
520           }
521         ]
522       },
523       {
524         "pin1": {
525           "compName": "_submodelinterface",
526           "pinName": "MUX"
527         },
528         "pin2": {
529           "compName": "Splitter#2",
530           "pinName": "I"
531         },
532         "name": "unnamedWire#15",
533         "path": []
534       },
535       {
536         "pin1": {
537           "compName": "Splitter#2",
538           "pinName": "O0"
539         },
540         "pin2": {
541           "compName": "WireCrossPoint#0",
542           "pinName": ""
543         },
544         "name": "unnamedWire#16",
545         "path": [
546           {
547             "x": 20.0,
548             "y": 105.0
549           }
550         ]
551       },
552       {
553         "pin1": {
554           "compName": "mux1_4#0",
555           "pinName": "Y4"
556         },
557         "pin2": {
558           "compName": "mux1_4#1",
559           "pinName": "I1_4"
560         },
561         "name": "unnamedWire#17",
562         "path": []
563       },
564       {
565         "pin1": {
566           "compName": "mux1_4#1",
567           "pinName": "I1_3"
568         },
569         "pin2": {
570           "compName": "mux1_4#0",
571           "pinName": "Y3"
572         },
573         "name": "unnamedWire#18",
574         "path": []
575       },
576       {
577         "pin1": {
578           "compName": "mux1_4#0",
579           "pinName": "Y2"
580         },
581         "pin2": {
582           "compName": "mux1_4#1",
583           "pinName": "I1_2"
584         },
585         "name": "unnamedWire#19",
586         "path": []
587       },
588       {
589         "pin1": {
590           "compName": "mux1_4#0",
591           "pinName": "Y1"
592         },
593         "pin2": {
594           "compName": "mux1_4#1",
595           "pinName": "I1_1"
596         },
597         "name": "unnamedWire#20",
598         "path": []
599       },
600       {
601         "pin1": {
602           "compName": "mux1_4#1",
603           "pinName": "I0_1"
604         },
605         "pin2": {
606           "compName": "WireCrossPoint#2",
607           "pinName": ""
608         },
609         "name": "unnamedWire#21",
610         "path": [
611           {
612             "x": 60.0,
613             "y": 90.0
614           }
615         ]
616       },
617       {
618         "pin1": {
619           "compName": "WireCrossPoint#2",
620           "pinName": ""
621         },
622         "pin2": {
623           "compName": "mux1_4#1",
624           "pinName": "I0_2"
625         },
626         "name": "unnamedWire#22",
627         "path": []
628       },
629       {
630         "pin1": {
631           "compName": "mux1_4#1",
632           "pinName": "I0_3"
633         },
634         "pin2": {
635           "compName": "WireCrossPoint#1",
636           "pinName": ""
637         },
638         "name": "unnamedWire#23",
639         "path": []
640       },
641       {
642         "pin1": {
643           "compName": "WireCrossPoint#1",
644           "pinName": ""
645         },
646         "pin2": {
647           "compName": "WireCrossPoint#2",
648           "pinName": ""
649         },
650         "name": "unnamedWire#24",
651         "path": []
652       },
653       {
654         "pin1": {
655           "compName": "WireCrossPoint#0",
656           "pinName": ""
657         },
658         "pin2": {
659           "compName": "WireCrossPoint#5",
660           "pinName": ""
661         },
662         "name": "unnamedWire#25",
663         "path": []
664       },
665       {
666         "pin1": {
667           "compName": "WireCrossPoint#5",
668           "pinName": ""
669         },
670         "pin2": {
671           "compName": "mux1_4#1",
672           "pinName": "I0_4"
673         },
674         "name": "unnamedWire#26",
675         "path": []
676       },
677       {
678         "pin1": {
679           "compName": "WireCrossPoint#0",
680           "pinName": ""
681         },
682         "pin2": {
683           "compName": "mux1_4#0",
684           "pinName": "S0"
685         },
686         "name": "unnamedWire#27",
687         "path": [
688           {
689             "x": 20.0,
690             "y": 130.0
691           }
692         ]
693       },
694       {
695         "pin1": {
696           "compName": "Splitter#2",
697           "pinName": "O1"
698         },
699         "pin2": {
700           "compName": "mux1_4#1",
701           "pinName": "S0"
702         },
703         "name": "unnamedWire#28",
704         "path": [
705           {
706             "x": 20.0,
707             "y": 95.0
708           },
709           {
710             "x": 20.0,
711             "y": 80.0
712           }
713         ]
714       },
715       {
716         "pin1": {
717           "compName": "WireCrossPoint#5",
718           "pinName": ""
719         },
720         "pin2": {
721           "compName": "WireCrossPoint#1",
722           "pinName": ""
723         },
724         "name": "unnamedWire#29",
725         "path": []
726       },
727       {
728         "pin1": {
729           "compName": "NandGate#2",
730           "pinName": "Y"
731         },
732         "pin2": {
733           "compName": "NandGate#0",
734           "pinName": "A"
735         },
736         "name": "unnamedWire#30",
737         "path": []
738       },
739       {
740         "pin1": {
741           "compName": "NandGate#0",
742           "pinName": "B"
743         },
744         "pin2": {
745           "compName": "NandGate#1",
746           "pinName": "Y"
747         },
748         "name": "unnamedWire#31",
749         "path": [
750           {
751             "x": 150.0,
752             "y": 150.0
753           },
754           {
755             "x": 150.0,
756             "y": 160.0
757           }
758         ]
759       },
760       {
761         "pin1": {
762           "compName": "_submodelinterface",
763           "pinName": "OVRRET"
764         },
765         "pin2": {
766           "compName": "NandGate#1",
767           "pinName": "A"
768         },
769         "name": "unnamedWire#32",
770         "path": [
771           {
772             "x": 115.0,
773             "y": 300.0
774           },
775           {
776             "x": 115.0,
777             "y": 155.0
778           }
779         ]
780       },
781       {
782         "pin1": {
783           "compName": "WireCrossPoint#3",
784           "pinName": ""
785         },
786         "pin2": {
787           "compName": "NandGate#1",
788           "pinName": "B"
789         },
790         "name": "unnamedWire#33",
791         "path": [
792           {
793             "x": 225.0,
794             "y": 175.0
795           },
796           {
797             "x": 120.0,
798             "y": 175.0
799           },
800           {
801             "x": 120.0,
802             "y": 165.0
803           }
804         ]
805       },
806       {
807         "pin1": {
808           "compName": "mux1_4#1",
809           "pinName": "Y2"
810         },
811         "pin2": {
812           "compName": "xor#0",
813           "pinName": "A"
814         },
815         "name": "unnamedWire#34",
816         "path": [
817           {
818             "x": 125.0,
819             "y": 90.0
820           },
821           {
822             "x": 125.0,
823             "y": 110.0
824           }
825         ]
826       },
827       {
828         "pin1": {
829           "compName": "_submodelinterface",
830           "pinName": "CINV"
831         },
832         "pin2": {
833           "compName": "xor#0",
834           "pinName": "B"
835         },
836         "name": "unnamedWire#35",
837         "path": [
838           {
839             "x": 105.0,
840             "y": 250.0
841           },
842           {
843             "x": 105.0,
844             "y": 120.0
845           }
846         ]
847       },
848       {
849         "pin1": {
850           "compName": "dff4_finewe#0",
851           "pinName": "_WE1"
852         },
853         "pin2": {
854           "compName": "_submodelinterface",
855           "pinName": "_EZ"
856         },
857         "name": "unnamedWire#36",
858         "path": [
859           {
860             "x": 180.0,
861             "y": 40.0
862           },
863           {
864             "x": 180.0,
865             "y": 5.0
866           },
867           {
868             "x": 50.0,
869             "y": 5.0
870           }
871         ]
872       },
873       {
874         "pin1": {
875           "compName": "_submodelinterface",
876           "pinName": "C"
877         },
878         "pin2": {
879           "compName": "dff4_finewe#0",
880           "pinName": "C"
881         },
882         "name": "unnamedWire#37",
883         "path": [
884           {
885             "x": 55.0,
886             "y": 50.0
887           },
888           {
889             "x": 55.0,
890             "y": 30.0
891           }
892         ]
893       },
894       {
895         "pin1": {
896           "compName": "_submodelinterface",
897           "pinName": "_EOVR"
898         },
899         "pin2": {
900           "compName": "dff4_finewe#0",
901           "pinName": "_WE4"
902         },
903         "name": "unnamedWire#38",
904         "path": [
905           {
906             "x": 200.0,
907             "y": 20.0
908           },
909           {
910             "x": 165.0,
911             "y": 20.0
912           },
913           {
914             "x": 165.0,
915             "y": 70.0
916           }
917         ]
918       },
919       {
920         "pin1": {
921           "compName": "dff4_finewe#0",
922           "pinName": "_WE3"
923         },
924         "pin2": {
925           "compName": "_submodelinterface",
926           "pinName": "_EN"
927         },
928         "name": "unnamedWire#39",
929         "path": [
930           {
931             "x": 170.0,
932             "y": 60.0
933           },
934           {
935             "x": 170.0,
936             "y": 15.0
937           },
938           {
939             "x": 150.0,
940             "y": 15.0
941           }
942         ]
943       },
944       {
945         "pin1": {
946           "compName": "_submodelinterface",
947           "pinName": "_EC"
948         },
949         "pin2": {
950           "compName": "dff4_finewe#0",
951           "pinName": "_WE2"
952         },
953         "name": "unnamedWire#40",
954         "path": [
955           {
956             "x": 100.0,
957             "y": 10.0
958           },
959           {
960             "x": 175.0,
961             "y": 10.0
962           },
963           {
964             "x": 175.0,
965             "y": 50.0
966           }
967         ]
968       },
969       {
970         "pin1": {
971           "compName": "dff4_finewe#0",
972           "pinName": "D1"
973         },
974         "pin2": {
975           "compName": "mux1_4#1",
976           "pinName": "Y1"
977         },
978         "name": "unnamedWire#41",
979         "path": []
980       },
981       {
982         "pin1": {
983           "compName": "xor#0",
984           "pinName": "Y"
985         },
986         "pin2": {
987           "compName": "dff4_finewe#0",
988           "pinName": "D2"
989         },
990         "name": "unnamedWire#42",
991         "path": [
992           {
993             "x": 170.0,
994             "y": 110.0
995           },
996           {
997             "x": 170.0,
998             "y": 90.0
999           }
1000         ]
1001       },
1002       {
1003         "pin1": {
1004           "compName": "dff4_finewe#0",
1005           "pinName": "D3"
1006         },
1007         "pin2": {
1008           "compName": "mux1_4#1",
1009           "pinName": "Y3"
1010         },
1011         "name": "unnamedWire#43",
1012         "path": []
1013       },
1014       {
1015         "pin1": {
1016           "compName": "WireCrossPoint#4",
1017           "pinName": ""
1018         },
1019         "pin2": {
1020           "compName": "mux1_4#1",
1021           "pinName": "Y4"
1022         },
1023         "name": "unnamedWire#44",
1024         "path": [
1025           {
1026             "x": 115.0,
1027             "y": 110.0
1028           }
1029         ]
1030       },
1031       {
1032         "pin1": {
1033           "compName": "NandGate#0",
1034           "pinName": "Y"
1035         },
1036         "pin2": {
1037           "compName": "dff4_finewe#0",
1038           "pinName": "D4"
1039         },
1040         "name": "unnamedWire#45",
1041         "path": [
1042           {
1043             "x": 180.0,
1044             "y": 145.0
1045           },
1046           {
1047             "x": 180.0,
1048             "y": 110.0
1049           }
1050         ]
1051       },
1052       {
1053         "pin1": {
1054           "compName": "WireCrossPoint#4",
1055           "pinName": ""
1056         },
1057         "pin2": {
1058           "compName": "NandGate#2",
1059           "pinName": "A"
1060         },
1061         "name": "unnamedWire#46",
1062         "path": []
1063       },
1064       {
1065         "pin1": {
1066           "compName": "WireCrossPoint#4",
1067           "pinName": ""
1068         },
1069         "pin2": {
1070           "compName": "NandGate#2",
1071           "pinName": "B"
1072         },
1073         "name": "unnamedWire#47",
1074         "path": [
1075           {
1076             "x": 115.0,
1077             "y": 145.0
1078           }
1079         ]
1080       },
1081       {
1082         "pin1": {
1083           "compName": "Splitter#0",
1084           "pinName": "O3"
1085         },
1086         "pin2": {
1087           "compName": "mux1_4#0",
1088           "pinName": "I0_1"
1089         },
1090         "name": "unnamedWire#48",
1091         "path": [
1092           {
1093             "x": 20.0,
1094             "y": 135.0
1095           },
1096           {
1097             "x": 20.0,
1098             "y": 140.0
1099           }
1100         ]
1101       }
1102     ],
1103     "version": "0.1.1"
1104   },
1105   "symbolRendererSnippetID": "simpleRectangularLike",
1106   "symbolRendererParams": {
1107     "centerText": "µSR",
1108     "centerTextHeight": 5.0,
1109     "horizontalComponentCenter": 17.5,
1110     "pinLabelHeight": 3.5,
1111     "pinLabelMargin": 0.5
1112   },
1113   "outlineRendererSnippetID": "default",
1114   "highLevelStateHandlerSnippetID": "standard",
1115   "highLevelStateHandlerParams": {
1116     "subcomponentHighLevelStates": {},
1117     "atomicHighLevelStates": {
1118       "q": {
1119         "id": "delegating",
1120         "params": {
1121           "delegateTarget": "dff4_finewe#0",
1122           "subStateID": "q"
1123         }
1124       }
1125     }
1126   },
1127   "version": "0.1.5"
1128 }