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