1<?xml version="1.0" encoding="utf-8"?>
2<circuit>
3  <version>1</version>
4  <attributes>
5    <entry>
6      <string>Description</string>
7      <string>4-bit ripple carry adder, consisting of four full adders.
8{{de 4-Bit Ripple-Carry addierer bestehend aus vier
9Volladdierern.}}</string>
10    </entry>
11  </attributes>
12  <visualElements>
13    <visualElement>
14      <elementName>XOr</elementName>
15      <elementAttributes/>
16      <pos x="-200" y="340"/>
17    </visualElement>
18    <visualElement>
19      <elementName>And</elementName>
20      <elementAttributes/>
21      <pos x="-200" y="260"/>
22    </visualElement>
23    <visualElement>
24      <elementName>And</elementName>
25      <elementAttributes/>
26      <pos x="-80" y="360"/>
27    </visualElement>
28    <visualElement>
29      <elementName>XOr</elementName>
30      <elementAttributes/>
31      <pos x="-80" y="440"/>
32    </visualElement>
33    <visualElement>
34      <elementName>In</elementName>
35      <elementAttributes>
36        <entry>
37          <string>Label</string>
38          <string>C_-1</string>
39        </entry>
40      </elementAttributes>
41      <pos x="-260" y="480"/>
42    </visualElement>
43    <visualElement>
44      <elementName>Or</elementName>
45      <elementAttributes/>
46      <pos x="20" y="280"/>
47    </visualElement>
48    <visualElement>
49      <elementName>In</elementName>
50      <elementAttributes>
51        <entry>
52          <string>Label</string>
53          <string>A_0</string>
54        </entry>
55        <entry>
56          <string>Default</string>
57          <int>1</int>
58        </entry>
59        <entry>
60          <string>InDefault</string>
61          <value v="1" z="false"/>
62        </entry>
63      </elementAttributes>
64      <pos x="-260" y="260"/>
65    </visualElement>
66    <visualElement>
67      <elementName>In</elementName>
68      <elementAttributes>
69        <entry>
70          <string>Label</string>
71          <string>B_0</string>
72        </entry>
73      </elementAttributes>
74      <pos x="-260" y="380"/>
75    </visualElement>
76    <visualElement>
77      <elementName>Out</elementName>
78      <elementAttributes>
79        <entry>
80          <string>Label</string>
81          <string>S_0</string>
82        </entry>
83      </elementAttributes>
84      <pos x="120" y="460"/>
85    </visualElement>
86    <visualElement>
87      <elementName>XOr</elementName>
88      <elementAttributes/>
89      <pos x="-200" y="40"/>
90    </visualElement>
91    <visualElement>
92      <elementName>And</elementName>
93      <elementAttributes/>
94      <pos x="-200" y="-40"/>
95    </visualElement>
96    <visualElement>
97      <elementName>And</elementName>
98      <elementAttributes/>
99      <pos x="-80" y="60"/>
100    </visualElement>
101    <visualElement>
102      <elementName>XOr</elementName>
103      <elementAttributes/>
104      <pos x="-80" y="140"/>
105    </visualElement>
106    <visualElement>
107      <elementName>Or</elementName>
108      <elementAttributes/>
109      <pos x="20" y="-20"/>
110    </visualElement>
111    <visualElement>
112      <elementName>In</elementName>
113      <elementAttributes>
114        <entry>
115          <string>Label</string>
116          <string>A_1</string>
117        </entry>
118      </elementAttributes>
119      <pos x="-260" y="-40"/>
120    </visualElement>
121    <visualElement>
122      <elementName>In</elementName>
123      <elementAttributes>
124        <entry>
125          <string>Label</string>
126          <string>B_1</string>
127        </entry>
128        <entry>
129          <string>Default</string>
130          <int>1</int>
131        </entry>
132        <entry>
133          <string>InDefault</string>
134          <value v="1" z="false"/>
135        </entry>
136      </elementAttributes>
137      <pos x="-260" y="80"/>
138    </visualElement>
139    <visualElement>
140      <elementName>Out</elementName>
141      <elementAttributes>
142        <entry>
143          <string>Label</string>
144          <string>S_1</string>
145        </entry>
146      </elementAttributes>
147      <pos x="120" y="160"/>
148    </visualElement>
149    <visualElement>
150      <elementName>XOr</elementName>
151      <elementAttributes/>
152      <pos x="-200" y="-260"/>
153    </visualElement>
154    <visualElement>
155      <elementName>And</elementName>
156      <elementAttributes/>
157      <pos x="-200" y="-340"/>
158    </visualElement>
159    <visualElement>
160      <elementName>And</elementName>
161      <elementAttributes/>
162      <pos x="-80" y="-240"/>
163    </visualElement>
164    <visualElement>
165      <elementName>XOr</elementName>
166      <elementAttributes/>
167      <pos x="-80" y="-160"/>
168    </visualElement>
169    <visualElement>
170      <elementName>Or</elementName>
171      <elementAttributes/>
172      <pos x="20" y="-320"/>
173    </visualElement>
174    <visualElement>
175      <elementName>In</elementName>
176      <elementAttributes>
177        <entry>
178          <string>Label</string>
179          <string>A_2</string>
180        </entry>
181        <entry>
182          <string>InDefault</string>
183          <value v="1" z="false"/>
184        </entry>
185      </elementAttributes>
186      <pos x="-260" y="-340"/>
187    </visualElement>
188    <visualElement>
189      <elementName>In</elementName>
190      <elementAttributes>
191        <entry>
192          <string>Label</string>
193          <string>B_2</string>
194        </entry>
195        <entry>
196          <string>Default</string>
197          <int>1</int>
198        </entry>
199      </elementAttributes>
200      <pos x="-260" y="-220"/>
201    </visualElement>
202    <visualElement>
203      <elementName>Out</elementName>
204      <elementAttributes>
205        <entry>
206          <string>Label</string>
207          <string>S_2</string>
208        </entry>
209      </elementAttributes>
210      <pos x="120" y="-140"/>
211    </visualElement>
212    <visualElement>
213      <elementName>XOr</elementName>
214      <elementAttributes/>
215      <pos x="-200" y="-560"/>
216    </visualElement>
217    <visualElement>
218      <elementName>And</elementName>
219      <elementAttributes/>
220      <pos x="-200" y="-640"/>
221    </visualElement>
222    <visualElement>
223      <elementName>And</elementName>
224      <elementAttributes/>
225      <pos x="-80" y="-540"/>
226    </visualElement>
227    <visualElement>
228      <elementName>XOr</elementName>
229      <elementAttributes/>
230      <pos x="-80" y="-460"/>
231    </visualElement>
232    <visualElement>
233      <elementName>Out</elementName>
234      <elementAttributes>
235        <entry>
236          <string>Label</string>
237          <string>C_3</string>
238        </entry>
239      </elementAttributes>
240      <pos x="120" y="-600"/>
241    </visualElement>
242    <visualElement>
243      <elementName>Or</elementName>
244      <elementAttributes/>
245      <pos x="20" y="-620"/>
246    </visualElement>
247    <visualElement>
248      <elementName>In</elementName>
249      <elementAttributes>
250        <entry>
251          <string>Label</string>
252          <string>A_3</string>
253        </entry>
254        <entry>
255          <string>Default</string>
256          <int>1</int>
257        </entry>
258      </elementAttributes>
259      <pos x="-260" y="-640"/>
260    </visualElement>
261    <visualElement>
262      <elementName>In</elementName>
263      <elementAttributes>
264        <entry>
265          <string>Label</string>
266          <string>B_3</string>
267        </entry>
268        <entry>
269          <string>InDefault</string>
270          <value v="1" z="false"/>
271        </entry>
272      </elementAttributes>
273      <pos x="-260" y="-520"/>
274    </visualElement>
275    <visualElement>
276      <elementName>Out</elementName>
277      <elementAttributes>
278        <entry>
279          <string>Label</string>
280          <string>S_3</string>
281        </entry>
282      </elementAttributes>
283      <pos x="120" y="-440"/>
284    </visualElement>
285    <visualElement>
286      <elementName>Testcase</elementName>
287      <elementAttributes>
288        <entry>
289          <string>Testdata</string>
290          <testData>
291            <dataString># complete test of all 512 possible additions
292C_-1 A_3 A_2 A_1 A_0 B_3 B_2 B_1 B_0 C_3 S_3 S_2 S_1 S_0
293loop(A,16)
294  loop(B,16)
2950 bits(4,A) bits(4,B) bits(5,A+B)
2961 bits(4,A) bits(4,B) bits(5,A+B+1)
297  end loop
298end loop</dataString>
299          </testData>
300        </entry>
301      </elementAttributes>
302      <pos x="240" y="420"/>
303    </visualElement>
304  </visualElements>
305  <wires>
306    <wire>
307      <p1 x="-240" y="260"/>
308      <p2 x="-220" y="340"/>
309    </wire>
310    <wire>
311      <p1 x="-220" y="300"/>
312      <p2 x="-240" y="380"/>
313    </wire>
314    <wire>
315      <p1 x="-120" y="360"/>
316      <p2 x="-100" y="440"/>
317    </wire>
318    <wire>
319      <p1 x="-100" y="400"/>
320      <p2 x="-120" y="480"/>
321    </wire>
322    <wire>
323      <p1 x="-240" y="-40"/>
324      <p2 x="-220" y="40"/>
325    </wire>
326    <wire>
327      <p1 x="-220" y="0"/>
328      <p2 x="-240" y="80"/>
329    </wire>
330    <wire>
331      <p1 x="-120" y="60"/>
332      <p2 x="-100" y="140"/>
333    </wire>
334    <wire>
335      <p1 x="-100" y="100"/>
336      <p2 x="-120" y="180"/>
337    </wire>
338    <wire>
339      <p1 x="-240" y="-340"/>
340      <p2 x="-220" y="-260"/>
341    </wire>
342    <wire>
343      <p1 x="-220" y="-300"/>
344      <p2 x="-240" y="-220"/>
345    </wire>
346    <wire>
347      <p1 x="-120" y="-240"/>
348      <p2 x="-100" y="-160"/>
349    </wire>
350    <wire>
351      <p1 x="-100" y="-200"/>
352      <p2 x="-120" y="-120"/>
353    </wire>
354    <wire>
355      <p1 x="-240" y="-640"/>
356      <p2 x="-220" y="-560"/>
357    </wire>
358    <wire>
359      <p1 x="-220" y="-600"/>
360      <p2 x="-240" y="-520"/>
361    </wire>
362    <wire>
363      <p1 x="-120" y="-540"/>
364      <p2 x="-100" y="-460"/>
365    </wire>
366    <wire>
367      <p1 x="-100" y="-500"/>
368      <p2 x="-120" y="-420"/>
369    </wire>
370    <wire>
371      <p1 x="-220" y="0"/>
372      <p2 x="-200" y="0"/>
373    </wire>
374    <wire>
375      <p1 x="80" y="0"/>
376      <p2 x="140" y="0"/>
377    </wire>
378    <wire>
379      <p1 x="0" y="320"/>
380      <p2 x="20" y="320"/>
381    </wire>
382    <wire>
383      <p1 x="-220" y="-260"/>
384      <p2 x="-200" y="-260"/>
385    </wire>
386    <wire>
387      <p1 x="0" y="-580"/>
388      <p2 x="20" y="-580"/>
389    </wire>
390    <wire>
391      <p1 x="-260" y="260"/>
392      <p2 x="-240" y="260"/>
393    </wire>
394    <wire>
395      <p1 x="-240" y="260"/>
396      <p2 x="-200" y="260"/>
397    </wire>
398    <wire>
399      <p1 x="-260" y="-520"/>
400      <p2 x="-240" y="-520"/>
401    </wire>
402    <wire>
403      <p1 x="-20" y="-520"/>
404      <p2 x="0" y="-520"/>
405    </wire>
406    <wire>
407      <p1 x="-240" y="-520"/>
408      <p2 x="-200" y="-520"/>
409    </wire>
410    <wire>
411      <p1 x="-100" y="-200"/>
412      <p2 x="-80" y="-200"/>
413    </wire>
414    <wire>
415      <p1 x="-20" y="-140"/>
416      <p2 x="120" y="-140"/>
417    </wire>
418    <wire>
419      <p1 x="-100" y="-460"/>
420      <p2 x="-80" y="-460"/>
421    </wire>
422    <wire>
423      <p1 x="-100" y="140"/>
424      <p2 x="-80" y="140"/>
425    </wire>
426    <wire>
427      <p1 x="-20" y="460"/>
428      <p2 x="120" y="460"/>
429    </wire>
430    <wire>
431      <p1 x="-280" y="-80"/>
432      <p2 x="140" y="-80"/>
433    </wire>
434    <wire>
435      <p1 x="-100" y="400"/>
436      <p2 x="-80" y="400"/>
437    </wire>
438    <wire>
439      <p1 x="-260" y="80"/>
440      <p2 x="-240" y="80"/>
441    </wire>
442    <wire>
443      <p1 x="-20" y="80"/>
444      <p2 x="0" y="80"/>
445    </wire>
446    <wire>
447      <p1 x="-240" y="80"/>
448      <p2 x="-200" y="80"/>
449    </wire>
450    <wire>
451      <p1 x="-140" y="-20"/>
452      <p2 x="20" y="-20"/>
453    </wire>
454    <wire>
455      <p1 x="-260" y="-340"/>
456      <p2 x="-240" y="-340"/>
457    </wire>
458    <wire>
459      <p1 x="-240" y="-340"/>
460      <p2 x="-200" y="-340"/>
461    </wire>
462    <wire>
463      <p1 x="0" y="20"/>
464      <p2 x="20" y="20"/>
465    </wire>
466    <wire>
467      <p1 x="-220" y="340"/>
468      <p2 x="-200" y="340"/>
469    </wire>
470    <wire>
471      <p1 x="0" y="-280"/>
472      <p2 x="20" y="-280"/>
473    </wire>
474    <wire>
475      <p1 x="80" y="-600"/>
476      <p2 x="120" y="-600"/>
477    </wire>
478    <wire>
479      <p1 x="-220" y="-600"/>
480      <p2 x="-200" y="-600"/>
481    </wire>
482    <wire>
483      <p1 x="-140" y="280"/>
484      <p2 x="20" y="280"/>
485    </wire>
486    <wire>
487      <p1 x="-140" y="-540"/>
488      <p2 x="-120" y="-540"/>
489    </wire>
490    <wire>
491      <p1 x="-120" y="-540"/>
492      <p2 x="-80" y="-540"/>
493    </wire>
494    <wire>
495      <p1 x="-260" y="-220"/>
496      <p2 x="-240" y="-220"/>
497    </wire>
498    <wire>
499      <p1 x="-20" y="-220"/>
500      <p2 x="0" y="-220"/>
501    </wire>
502    <wire>
503      <p1 x="-240" y="-220"/>
504      <p2 x="-200" y="-220"/>
505    </wire>
506    <wire>
507      <p1 x="-280" y="220"/>
508      <p2 x="140" y="220"/>
509    </wire>
510    <wire>
511      <p1 x="-100" y="-160"/>
512      <p2 x="-80" y="-160"/>
513    </wire>
514    <wire>
515      <p1 x="-20" y="160"/>
516      <p2 x="120" y="160"/>
517    </wire>
518    <wire>
519      <p1 x="-260" y="480"/>
520      <p2 x="-120" y="480"/>
521    </wire>
522    <wire>
523      <p1 x="-120" y="480"/>
524      <p2 x="-80" y="480"/>
525    </wire>
526    <wire>
527      <p1 x="-280" y="-420"/>
528      <p2 x="-120" y="-420"/>
529    </wire>
530    <wire>
531      <p1 x="-120" y="-420"/>
532      <p2 x="-80" y="-420"/>
533    </wire>
534    <wire>
535      <p1 x="-100" y="100"/>
536      <p2 x="-80" y="100"/>
537    </wire>
538    <wire>
539      <p1 x="-260" y="-40"/>
540      <p2 x="-240" y="-40"/>
541    </wire>
542    <wire>
543      <p1 x="-240" y="-40"/>
544      <p2 x="-200" y="-40"/>
545    </wire>
546    <wire>
547      <p1 x="-220" y="40"/>
548      <p2 x="-200" y="40"/>
549    </wire>
550    <wire>
551      <p1 x="-140" y="360"/>
552      <p2 x="-120" y="360"/>
553    </wire>
554    <wire>
555      <p1 x="-120" y="360"/>
556      <p2 x="-80" y="360"/>
557    </wire>
558    <wire>
559      <p1 x="-220" y="-300"/>
560      <p2 x="-200" y="-300"/>
561    </wire>
562    <wire>
563      <p1 x="80" y="-300"/>
564      <p2 x="140" y="-300"/>
565    </wire>
566    <wire>
567      <p1 x="-140" y="-620"/>
568      <p2 x="20" y="-620"/>
569    </wire>
570    <wire>
571      <p1 x="-220" y="300"/>
572      <p2 x="-200" y="300"/>
573    </wire>
574    <wire>
575      <p1 x="80" y="300"/>
576      <p2 x="140" y="300"/>
577    </wire>
578    <wire>
579      <p1 x="-220" y="-560"/>
580      <p2 x="-200" y="-560"/>
581    </wire>
582    <wire>
583      <p1 x="-140" y="-240"/>
584      <p2 x="-120" y="-240"/>
585    </wire>
586    <wire>
587      <p1 x="-120" y="-240"/>
588      <p2 x="-80" y="-240"/>
589    </wire>
590    <wire>
591      <p1 x="-100" y="-500"/>
592      <p2 x="-80" y="-500"/>
593    </wire>
594    <wire>
595      <p1 x="-280" y="180"/>
596      <p2 x="-120" y="180"/>
597    </wire>
598    <wire>
599      <p1 x="-120" y="180"/>
600      <p2 x="-80" y="180"/>
601    </wire>
602    <wire>
603      <p1 x="-20" y="-440"/>
604      <p2 x="120" y="-440"/>
605    </wire>
606    <wire>
607      <p1 x="-280" y="-120"/>
608      <p2 x="-120" y="-120"/>
609    </wire>
610    <wire>
611      <p1 x="-120" y="-120"/>
612      <p2 x="-80" y="-120"/>
613    </wire>
614    <wire>
615      <p1 x="-100" y="440"/>
616      <p2 x="-80" y="440"/>
617    </wire>
618    <wire>
619      <p1 x="-280" y="-380"/>
620      <p2 x="140" y="-380"/>
621    </wire>
622    <wire>
623      <p1 x="-140" y="60"/>
624      <p2 x="-120" y="60"/>
625    </wire>
626    <wire>
627      <p1 x="-120" y="60"/>
628      <p2 x="-80" y="60"/>
629    </wire>
630    <wire>
631      <p1 x="-260" y="380"/>
632      <p2 x="-240" y="380"/>
633    </wire>
634    <wire>
635      <p1 x="-20" y="380"/>
636      <p2 x="0" y="380"/>
637    </wire>
638    <wire>
639      <p1 x="-240" y="380"/>
640      <p2 x="-200" y="380"/>
641    </wire>
642    <wire>
643      <p1 x="-140" y="-320"/>
644      <p2 x="20" y="-320"/>
645    </wire>
646    <wire>
647      <p1 x="-260" y="-640"/>
648      <p2 x="-240" y="-640"/>
649    </wire>
650    <wire>
651      <p1 x="-240" y="-640"/>
652      <p2 x="-200" y="-640"/>
653    </wire>
654    <wire>
655      <p1 x="0" y="320"/>
656      <p2 x="0" y="380"/>
657    </wire>
658    <wire>
659      <p1 x="0" y="20"/>
660      <p2 x="0" y="80"/>
661    </wire>
662    <wire>
663      <p1 x="0" y="-280"/>
664      <p2 x="0" y="-220"/>
665    </wire>
666    <wire>
667      <p1 x="0" y="-580"/>
668      <p2 x="0" y="-520"/>
669    </wire>
670    <wire>
671      <p1 x="-280" y="-420"/>
672      <p2 x="-280" y="-380"/>
673    </wire>
674    <wire>
675      <p1 x="-280" y="180"/>
676      <p2 x="-280" y="220"/>
677    </wire>
678    <wire>
679      <p1 x="-280" y="-120"/>
680      <p2 x="-280" y="-80"/>
681    </wire>
682    <wire>
683      <p1 x="140" y="-380"/>
684      <p2 x="140" y="-300"/>
685    </wire>
686    <wire>
687      <p1 x="140" y="220"/>
688      <p2 x="140" y="300"/>
689    </wire>
690    <wire>
691      <p1 x="140" y="-80"/>
692      <p2 x="140" y="0"/>
693    </wire>
694  </wires>
695</circuit>