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