diff --git a/src/test/java/de/neemann/digital/integration/TestExamples.java b/src/test/java/de/neemann/digital/integration/TestExamples.java index 232580351..2ca31b999 100644 --- a/src/test/java/de/neemann/digital/integration/TestExamples.java +++ b/src/test/java/de/neemann/digital/integration/TestExamples.java @@ -39,8 +39,8 @@ public class TestExamples extends TestCase { */ public void testTestExamples() throws Exception { File examples = new File(Resources.getRoot(), "/dig/test"); - assertEquals(72, new FileScanner(this::check).scan(examples)); - assertEquals(66, testCasesInFiles); + assertEquals(73, new FileScanner(this::check).scan(examples)); + assertEquals(67, testCasesInFiles); } diff --git a/src/test/resources/dig/test/fet/cmosFullAdder.dig b/src/test/resources/dig/test/fet/cmosFullAdder.dig new file mode 100644 index 000000000..0ea9ddec0 --- /dev/null +++ b/src/test/resources/dig/test/fet/cmosFullAdder.dig @@ -0,0 +1,1135 @@ + + + 1 + + + + PFET + + + + + PFET + + + + + PFET + + + + + PFET + + + + + PFET + + + + + VDD + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + C_i + + + + + + NFET + + + + + NFET + + + + + NFET + + + + + NFET + + + + + NFET + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + C_i + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + NFET + + + + + PFET + + + + + VDD + + + + + Ground + + + + + Ground + + + + + Out + + + Label + C_o + + + + + + Tunnel + + + NetName + A + + + + + + Tunnel + + + NetName + B + + + + + + Tunnel + + + NetName + C_i + + + + + + In + + + Label + A + + + + + + In + + + Label + B + + + + + + In + + + Label + C_i + + + + + + PFET + + + + + PFET + + + + + PFET + + + + + PFET + + + + + PFET + + + + + PFET + + + + + PFET + + + + + VDD + + + + + Tunnel + + + rotation + + + + NetName + C_i + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + C_i + + + + + + NFET + + + + + NFET + + + + + NFET + + + + + NFET + + + + + Tunnel + + + rotation + + + + NetName + C_i + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Ground + + + + + NFET + + + + + PFET + + + + + VDD + + + + + Ground + + + + + Out + + + Label + S + + + + + + NFET + + + + + NFET + + + + + NFET + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + C_i + + + + + + Ground + + + + + Testcase + + + Testdata + + A B C_i C_o S + 0 0 0 0 0 + 0 0 1 0 1 + 0 1 0 0 1 + 0 1 1 1 0 + 1 0 0 0 1 + 1 0 1 1 0 + 1 1 0 1 0 + 1 1 1 1 1 + + + + +# transitions +0 0 0 0 0 +0 0 1 0 1 +0 0 0 0 0 +0 1 0 0 1 +0 0 0 0 0 +0 1 1 1 0 +0 0 0 0 0 +1 0 0 0 1 +0 0 0 0 0 +1 0 1 1 0 +0 0 0 0 0 +1 1 0 1 0 +0 0 0 0 0 +1 1 1 1 1 +0 0 0 0 0 +0 0 1 0 1 +0 1 0 0 1 +0 0 1 0 1 +0 1 1 1 0 +0 0 1 0 1 +1 0 0 0 1 +0 0 1 0 1 +1 0 1 1 0 +0 0 1 0 1 +1 1 0 1 0 +0 0 1 0 1 +1 1 1 1 1 +0 0 1 0 1 +0 1 0 0 1 +0 1 1 1 0 +0 1 0 0 1 +1 0 0 0 1 +0 1 0 0 1 +1 0 1 1 0 +0 1 0 0 1 +1 1 0 1 0 +0 1 0 0 1 +1 1 1 1 1 +0 1 0 0 1 +0 1 1 1 0 +1 0 0 0 1 +0 1 1 1 0 +1 0 1 1 0 +0 1 1 1 0 +1 1 0 1 0 +0 1 1 1 0 +1 1 1 1 1 +0 1 1 1 0 +1 0 0 0 1 +1 0 1 1 0 +1 0 0 0 1 +1 1 0 1 0 +1 0 0 0 1 +1 1 1 1 1 +1 0 0 0 1 +1 0 1 1 0 +1 1 0 1 0 +1 0 1 1 0 +1 1 1 1 1 +1 0 1 1 0 +1 1 0 1 0 +1 1 1 1 1 +1 1 0 1 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file