Introduced dff4 with no WE pin
[Mograsim.git] / plugins / net.mograsim.logic.model.am2900 / components / net / mograsim / logic / model / am2900 / components / dff4.json
1 {
2   "width": 40.0,
3   "height": 45.0,
4   "interfacePins": [
5     {
6       "location": {
7         "x": 0.0,
8         "y": 30.0
9       },
10       "name": "C",
11       "logicWidth": 1,
12       "usage": "INPUT"
13     },
14     {
15       "location": {
16         "x": 0.0,
17         "y": 20.0
18       },
19       "name": "D",
20       "logicWidth": 4,
21       "usage": "INPUT"
22     },
23     {
24       "location": {
25         "x": 40.0,
26         "y": 20.0
27       },
28       "name": "Q",
29       "logicWidth": 4,
30       "usage": "OUTPUT"
31     }
32   ],
33   "innerScale": 0.4,
34   "submodel": {
35     "components": [
36       {
37         "id": "Splitter",
38         "name": "Splitter#0",
39         "pos": {
40           "x": 85.0,
41           "y": 35.0
42         },
43         "params": {
44           "logicWidth": 4,
45           "orientation": "LEFT"
46         }
47       },
48       {
49         "id": "Splitter",
50         "name": "Splitter#1",
51         "pos": {
52           "x": 5.0,
53           "y": 35.0
54         },
55         "params": {
56           "logicWidth": 4,
57           "orientation": "RIGHT"
58         }
59       },
60       {
61         "id": "WireCrossPoint",
62         "name": "WireCrossPoint#0",
63         "pos": {
64           "x": 29.0,
65           "y": 74.0
66         },
67         "params": 1
68       },
69       {
70         "id": "WireCrossPoint",
71         "name": "WireCrossPoint#1",
72         "pos": {
73           "x": 29.0,
74           "y": 44.0
75         },
76         "params": 1
77       },
78       {
79         "id": "WireCrossPoint",
80         "name": "WireCrossPoint#2",
81         "pos": {
82           "x": 29.0,
83           "y": 69.0
84         },
85         "params": 1
86       },
87       {
88         "id": "dff",
89         "name": "dff#0",
90         "pos": {
91           "x": 35.0,
92           "y": 5.0
93         }
94       },
95       {
96         "id": "dff",
97         "name": "dff#1",
98         "pos": {
99           "x": 35.0,
100           "y": 30.0
101         }
102       },
103       {
104         "id": "dff",
105         "name": "dff#2",
106         "pos": {
107           "x": 35.0,
108           "y": 55.0
109         }
110       },
111       {
112         "id": "dff",
113         "name": "dff#3",
114         "pos": {
115           "x": 35.0,
116           "y": 80.0
117         }
118       }
119     ],
120     "wires": [
121       {
122         "pin1": {
123           "compName": "WireCrossPoint#1",
124           "pinName": ""
125         },
126         "pin2": {
127           "compName": "dff#0",
128           "pinName": "C"
129         },
130         "name": "unnamedWire#0",
131         "path": [
132           {
133             "x": 30.0,
134             "y": 20.0
135           }
136         ]
137       },
138       {
139         "pin1": {
140           "compName": "Splitter#1",
141           "pinName": "O3"
142         },
143         "pin2": {
144           "compName": "dff#0",
145           "pinName": "D"
146         },
147         "name": "unnamedWire#1",
148         "path": [
149           {
150             "x": 20.0,
151             "y": 35.0
152           },
153           {
154             "x": 20.0,
155             "y": 10.0
156           }
157         ]
158       },
159       {
160         "pin1": {
161           "compName": "Splitter#1",
162           "pinName": "O2"
163         },
164         "pin2": {
165           "compName": "dff#1",
166           "pinName": "D"
167         },
168         "name": "unnamedWire#2",
169         "path": [
170           {
171             "x": 25.0,
172             "y": 45.0
173           },
174           {
175             "x": 25.0,
176             "y": 35.0
177           }
178         ]
179       },
180       {
181         "pin1": {
182           "compName": "WireCrossPoint#0",
183           "pinName": ""
184         },
185         "pin2": {
186           "compName": "dff#3",
187           "pinName": "C"
188         },
189         "name": "unnamedWire#3",
190         "path": [
191           {
192             "x": 30.0,
193             "y": 95.0
194           }
195         ]
196       },
197       {
198         "pin1": {
199           "compName": "WireCrossPoint#0",
200           "pinName": ""
201         },
202         "pin2": {
203           "compName": "WireCrossPoint#2",
204           "pinName": ""
205         },
206         "name": "unnamedWire#4",
207         "path": []
208       },
209       {
210         "pin1": {
211           "compName": "WireCrossPoint#1",
212           "pinName": ""
213         },
214         "pin2": {
215           "compName": "dff#1",
216           "pinName": "C"
217         },
218         "name": "unnamedWire#5",
219         "path": []
220       },
221       {
222         "pin1": {
223           "compName": "WireCrossPoint#1",
224           "pinName": ""
225         },
226         "pin2": {
227           "compName": "WireCrossPoint#2",
228           "pinName": ""
229         },
230         "name": "unnamedWire#6",
231         "path": []
232       },
233       {
234         "pin1": {
235           "compName": "WireCrossPoint#2",
236           "pinName": ""
237         },
238         "pin2": {
239           "compName": "dff#2",
240           "pinName": "C"
241         },
242         "name": "unnamedWire#7",
243         "path": []
244       },
245       {
246         "pin1": {
247           "compName": "_submodelinterface",
248           "pinName": "C"
249         },
250         "pin2": {
251           "compName": "WireCrossPoint#0",
252           "pinName": ""
253         },
254         "name": "unnamedWire#8",
255         "path": []
256       },
257       {
258         "pin1": {
259           "compName": "_submodelinterface",
260           "pinName": "D"
261         },
262         "pin2": {
263           "compName": "Splitter#1",
264           "pinName": "I"
265         },
266         "name": "unnamedWire#9",
267         "path": []
268       },
269       {
270         "pin1": {
271           "compName": "Splitter#0",
272           "pinName": "I"
273         },
274         "pin2": {
275           "compName": "_submodelinterface",
276           "pinName": "Q"
277         },
278         "name": "unnamedWire#10",
279         "path": []
280       },
281       {
282         "pin1": {
283           "compName": "dff#2",
284           "pinName": "D"
285         },
286         "pin2": {
287           "compName": "Splitter#1",
288           "pinName": "O1"
289         },
290         "name": "unnamedWire#11",
291         "path": [
292           {
293             "x": 20.0,
294             "y": 60.0
295           },
296           {
297             "x": 20.0,
298             "y": 55.0
299           }
300         ]
301       },
302       {
303         "pin1": {
304           "compName": "Splitter#1",
305           "pinName": "O0"
306         },
307         "pin2": {
308           "compName": "dff#3",
309           "pinName": "D"
310         },
311         "name": "unnamedWire#12",
312         "path": [
313           {
314             "x": 20.0,
315             "y": 65.0
316           },
317           {
318             "x": 20.0,
319             "y": 85.0
320           }
321         ]
322       },
323       {
324         "pin1": {
325           "compName": "dff#0",
326           "pinName": "Q"
327         },
328         "pin2": {
329           "compName": "Splitter#0",
330           "pinName": "O3"
331         },
332         "name": "unnamedWire#13",
333         "path": [
334           {
335             "x": 80.0,
336             "y": 10.0
337           },
338           {
339             "x": 80.0,
340             "y": 35.0
341           }
342         ]
343       },
344       {
345         "pin1": {
346           "compName": "Splitter#0",
347           "pinName": "O2"
348         },
349         "pin2": {
350           "compName": "dff#1",
351           "pinName": "Q"
352         },
353         "name": "unnamedWire#14",
354         "path": [
355           {
356             "x": 75.0,
357             "y": 45.0
358           },
359           {
360             "x": 75.0,
361             "y": 35.0
362           }
363         ]
364       },
365       {
366         "pin1": {
367           "compName": "dff#2",
368           "pinName": "Q"
369         },
370         "pin2": {
371           "compName": "Splitter#0",
372           "pinName": "O1"
373         },
374         "name": "unnamedWire#15",
375         "path": [
376           {
377             "x": 80.0,
378             "y": 60.0
379           },
380           {
381             "x": 80.0,
382             "y": 55.0
383           }
384         ]
385       },
386       {
387         "pin1": {
388           "compName": "Splitter#0",
389           "pinName": "O0"
390         },
391         "pin2": {
392           "compName": "dff#3",
393           "pinName": "Q"
394         },
395         "name": "unnamedWire#16",
396         "path": [
397           {
398             "x": 80.0,
399             "y": 65.0
400           },
401           {
402             "x": 80.0,
403             "y": 85.0
404           }
405         ]
406       }
407     ],
408     "version": "0.1.1"
409   },
410   "symbolRendererSnippetID": "simpleRectangularLike",
411   "symbolRendererParams": {
412     "centerText": "D flip flop\n4 bit",
413     "centerTextHeight": 5.0,
414     "horizontalComponentCenter": 17.5,
415     "pinLabelHeight": 3.5,
416     "pinLabelMargin": 0.5
417   },
418   "outlineRendererSnippetID": "default",
419   "highLevelStateHandlerSnippetID": "standard",
420   "highLevelStateHandlerParams": {
421     "subcomponentHighLevelStates": {},
422     "atomicHighLevelStates": {
423       "q": {
424         "id": "bitVectorSplitting",
425         "params": {
426           "vectorPartTargets": [
427             "q4",
428             "q3",
429             "q2",
430             "q1"
431           ],
432           "vectorPartLengthes": [
433             1,
434             1,
435             1,
436             1
437           ]
438         }
439       },
440       "q1": {
441         "id": "delegating",
442         "params": {
443           "delegateTarget": "dff#3",
444           "subStateID": "q"
445         }
446       },
447       "q2": {
448         "id": "delegating",
449         "params": {
450           "delegateTarget": "dff#2",
451           "subStateID": "q"
452         }
453       },
454       "q3": {
455         "id": "delegating",
456         "params": {
457           "delegateTarget": "dff#1",
458           "subStateID": "q"
459         }
460       },
461       "q4": {
462         "id": "delegating",
463         "params": {
464           "delegateTarget": "dff#0",
465           "subStateID": "q"
466         }
467       }
468     }
469   },
470   "version": "0.1.5"
471 }