From a22457666807610163a995a5438beb3a98ca02e1 Mon Sep 17 00:00:00 2001 From: hneemann Date: Wed, 21 Jun 2017 09:40:13 +0200 Subject: [PATCH] added cmos full adder as a fet test case --- .../digital/integration/TestExamples.java | 4 +- .../resources/dig/test/fet/cmosFullAdder.dig | 1135 +++++++++++++++++ 2 files changed, 1137 insertions(+), 2 deletions(-) create mode 100644 src/test/resources/dig/test/fet/cmosFullAdder.dig 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