Update README with info about the timer API

Signed-off-by: Joachim Strömbergson <joachim@assured.se>
This commit is contained in:
Joachim Strömbergson 2023-05-08 11:02:05 +02:00 committed by dehanj
parent 4c54b4b60b
commit e6eaad87dc
No known key found for this signature in database
GPG Key ID: 3707A9DBF4BB8F1A
1 changed files with 21 additions and 0 deletions

View File

@ -7,8 +7,29 @@ allows measurement of time durations rather than cycles. If for
example setting the prescaler to the clock frequency in Hertz, the
timer will count seconds.
## API
The following addresses define the API for the timer:
```
ADDR_CTRL: 0x08
CTRL_START_BIT: 0
CTRL_STOP_BIT: 1
ADDR_STATUS: 0x09
STATUS_RUNNING_BIT: 0
ADDR_PRESCALER: 0x0a
ADDR_TIMER: 0x0b
```
## Details
The core consists of the timer_core module (in timer_core.v) and a top
level wrapper, timer (in timer.v). The top level wrapper implements
the API, while the timer_core implements the actual timer
functionality.
The timer counter and the prescaler counter are both 32 bits.
When enabled the counter counts down one integer value per cycle.