(C) David Vajda Sat Jul 26 19:00:48 2025 3 Network - TTL - Disjunktive Normalform x2 x1 x0 y 0 0 0 0 1 1 0 0 1 1 2 0 1 0 0 3 0 1 1 1 4 1 0 0 0 5 1 0 1 1 6 1 1 0 0 7 1 1 1 0 x2 x1 x0 y 0 0 0 0 1 1 0 0 1 1 3 0 1 1 1 5 1 0 1 1 raucherpause x2 x1 x0 y Gruppe 0: 0 0 0 0 1 Gruppe 1: 1 0 0 1 1 Gruppe 2: 3 0 1 1 1 5 1 0 1 1 0:1 0 0 - 1:3 0 - 1 1:5 - 0 1 primimplikantentafel 0 1 3 5 0:1 + + 1:3 + + 1:5 + + kann man nichts streichen... === debugging ==== 2025-07-26, 22:04:14 o' Clock pm MEZ?? CET ... x2 x1 x0 y 0 0 0 0 1 1 0 0 1 1 2 0 1 0 0 3 0 1 1 1 4 1 0 0 0 5 1 0 1 1 6 1 1 0 0 7 1 1 1 0 verkehrt herum, ... x2 x1 x0 y 2 0 1 0 0 4 1 0 0 0 6 1 1 0 0 7 1 1 1 0 so: x2 x1 x0 y Gruppe 1: 2 0 1 0 0 4 1 0 0 0 Gruppe 2: 6 1 1 0 0 Gruppe 3: 7 1 1 1 0 2:6 - 1 0 4:6 1 - 0 6:7 1 1 - so, erklaerung, was uns probleme macht ist, zeile 2 zeile 2 macht probleme, ... zeile 2 finden wir in 2:6 - 1 0 so, gut, das ist die einzige zeile, die ergibt - 1 0 jetzt: wir haben die sache anders herum debuggt und wissen, hier kann der fehler liegen ... ... aber, wie finden wir den? wir suchen in unserer DNF nach einer kombination - 1 0 x2: x x1: 1 x0: 0 das bedeutet, wenn wir das finden ist es falsch ============================= 0:1 0 0 - 1:3 0 - 1 1:5 - 0 1 bedeutet: y <= (not x2 and not x1) or (not x2 and x0) or (not x1 and x0); library ieee; use ieee.std_logic_1164.all; entity quine20250726 is port ( x2, x1, x0: in std_logic; y: out std_logic ); end; architecture behaviour of quine20250726 is begin y <= (not x2 and not x1) or (not x2 and x0) or (not x1 and x0); end; library ieee; use ieee.std_logic_1164.all; entity quine20250726testbench is port ( y: inout std_logic ); end; architecture behaviour of quine20250726testbench is component quine20250726 port ( x2, x1, x0: in std_logic; y: out std_logic ); end component; signal x2, x1, x0: std_logic; begin q: quine20250726 PORT MAP (x2=>x2, x1=>x1, x0=>x0, y=>y);