aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/counters.tex11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/counters.tex b/src/counters.tex
index bd89ccb..7425a49 100644
--- a/src/counters.tex
+++ b/src/counters.tex
@@ -133,9 +133,7 @@ real-time clock, and, for realistic real-time clock frequencies, should never
overflow in practice.
The execution environment should provide a means of determining the period of
a counter tick (seconds/tick).
-The period must be constant.
-The real-time clocks of all harts in a single user application
-should be synchronized to within one tick of the real-time clock.
+The period should be constant within a small error bound.
The environment should provide a means to determine the accuracy of the clock
(i.e., the maximum relative error between the nominal and actual real-time
clock periods).
@@ -144,8 +142,15 @@ clock periods).
On some simple platforms, cycle count might represent a valid
implementation of RDTIME, in which case RDTIME and RDCYCLE may
return the same result.
+
+It is difficult to provide a strict mandate on clock period given the
+wide variety of possible implementation platforms. The error bound
+should be evaluated relative to the requirements of the platform.
\end{commentary}
+The real-time clocks of all harts in a single user application
+should be synchronized to within one tick of the real-time clock.
+
The RDINSTRET pseudoinstruction reads the low XLEN bits of the {\tt
instret} CSR, which counts the number of instructions retired by
this hart from some arbitrary start point in the past. RDINSTRETH is