From dc9086512bd8e8b979949497acf0f0db18d56586 Mon Sep 17 00:00:00 2001 From: Wilson Snyder Date: Mon, 16 Apr 2012 07:31:27 -0400 Subject: [PATCH] Doxygen logo and commentary --- bin/verilator | 28 ++++++++++++++-------------- veripool-logo.png | Bin 6750 -> 885 bytes 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/bin/verilator b/bin/verilator index 5a7bcea9b..353fa95ea 100755 --- a/bin/verilator +++ b/bin/verilator @@ -2215,23 +2215,23 @@ Verilator is a two state simulator, not a four state simulator. However, it has two features which uncover most initialization bugs (including many that a four state simulator will miss.) -First, assigning a variable to a X will actually assign the variable to a -random value (see the -x-assign switch.) Thus if the value is actually -used, the random value should cause downstream errors. Integers also -randomize, even though the Verilog 2001 specification says they initialize -to zero. - Identity comparisons (=== or !==) are converted to standard ==/!== when neither side is a constant. This may make the expression result differ -from a four state simulator. +from a four state simulator. An === comparison to X will always be false, +so that Verilog code which checks for uninitialized logic will not fire. -All variables are initialized using a function. By running several -random simulation runs you can determine that reset is working correctly. -On the first run, the function initializes variables to zero. On the -second, have it initialize variables to one. On the third and following -runs have it initialize them randomly. If the results match, reset works. -(Note this is what the hardware will really do.) In practice, just setting -all variables to one at startup finds most problems. +Assigning a variable to a X will actually assign the variable to a random +value (see the -x-assign switch.) Thus if the value is actually used, the +random value should cause downstream errors. Integers also randomize, even +though the Verilog 2001 specification says they initialize to zero. + +All variables are randomly initialized using a function. By running +several random simulation runs you can determine that reset is working +correctly. On the first run, the function initializes variables to zero. +On the second, have it initialize variables to one. On the third and +following runs have it initialize them randomly. If the results match, +reset works. (Note this is what the hardware will really do.) In +practice, just setting all variables to one at startup finds most problems. =head2 Tri/Inout diff --git a/veripool-logo.png b/veripool-logo.png index ab8b493d0bd494e679b02b0e79df19076d4c124d..6ca0a537ba175a0767e9a8c5477399d1ac97fe4e 100644 GIT binary patch literal 885 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 d-tPr(QjZV!^dq(O+du?CNnTy