Skip to content

Commit

Permalink
Forbid mixing clocks (#2670)
Browse files Browse the repository at this point in the history
Closes #2365

Specifically:
* Forbids noClock between different base-clocks.
* Forbids system of equations between different sub-clocks.

Co-authored-by: Henrik Tidefelt <henrikt@wolfram.com>
  • Loading branch information
HansOlsson and henrikt-ma committed Oct 5, 2020
1 parent 76a011d commit 2158b10
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion chapters/synchronous.tex
Expand Up @@ -778,7 +778,7 @@ \subsection{Sub-clock conversion operators}\label{sub-clock-conversion-operators
\\ \hline
\lstinline!noClock(u)!
&
The clock of \lstinline!y = noClock(u)! is always inferred. At every tick
The clock of \lstinline!y = noClock(u)! is always inferred, and \lstinline!u! must be part of the same base-clock as \lstinline!y!. At every tick
of the clock of \lstinline!y!, the operator returns the value of \lstinline!u! from the last
tick of the clock of \lstinline!u!. If \lstinline!noClock(u)! is called before the
first tick of the clock of \lstinline!u!, the start value of \lstinline!u! is returned.\\ \hline
Expand Down Expand Up @@ -1013,6 +1013,9 @@ \subsection{Sub-clock Partitioning}\label{sub-clock-partitioning}
\textless{}E\textsubscript{ij}, V\textsubscript{ij}\textgreater{},
according to sub-clocks.

The resulting sets of equations and variables shall be possible to solve separately,
meaning that systems of equations cannot involve different sub-clocks.

It can be noted that:

$E_{ij} \bigcap E_{kl} = \emptyset~ \forall i\ne{}k, j\ne{}l$
Expand Down

0 comments on commit 2158b10

Please sign in to comment.