summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2020-11-05 09:37:17 +0000
committerYann Herklotz <git@yannherklotz.com>2020-11-05 09:37:17 +0000
commitdc1f84fbcfb3c275a551393650118bf7494f8ddf (patch)
tree4bbcc01836c2b8e6b8da844001d1d2a8612e61e0
parentf56dac43ebce6f29635d6a575902242e62ffaf87 (diff)
downloadoopsla21_fvhls-dc1f84fbcfb3c275a551393650118bf7494f8ddf.tar.gz
oopsla21_fvhls-dc1f84fbcfb3c275a551393650118bf7494f8ddf.zip
Add more
-rw-r--r--verilog.tex2
1 files changed, 1 insertions, 1 deletions
diff --git a/verilog.tex b/verilog.tex
index a963a99..a1fa4ac 100644
--- a/verilog.tex
+++ b/verilog.tex
@@ -31,7 +31,7 @@ The Verilog semantics are based on the semantics proposed by \citet{loow19_verif
The semantics of Verilog differ from regular programming languages, as it is used to describe hardware directly, which is inherently parallel, instead of describing an algorithm, which is often done sequentially. The main construct in Verilog is the always block, which is construct that contains statements. A module can contain multiple always blocks, which all run in parallel. Each always block also contains a list of events at which it should trigger, which could either contain signals that are assigned to other signals in that always block, or a different signal such as a clock which will trigger the always b lock periodically. Two types of assignments are also supported in always blocks: nonblocking and blocking assignment. Nonblocking assignment modifies the signal at the end of the timestep, and atomically, meaning a swap operation can be implement without a temporary variable. Blocking assignment, on the other hand, assigns the variable directly in the always block for later signals to pick up. Using these constructs it is therefore possible to describe how hardware functions, where always blocks that are triggered by a clock periodically get translated into flip-flops and always blocks triggered by changes in any internal signals are translated into combinational logic.
-
+When targeting a hardware description language such as Verilog, it is important to be consistent between simulating the hardware and the behaviour of the synthesised result on actual hardware. In the target Verilog semantics, only clocked always blocks are supported.
\subsection{Changes to the Semantics}