mirror of
https://github.com/olofk/serv.git
synced 2025-04-22 12:57:09 -04:00
Update serv_bufreg documentation
This commit is contained in:
parent
bf0ec16ef8
commit
58e86384e7
2 changed files with 3 additions and 1 deletions
|
@ -59,7 +59,9 @@ serv_bufreg
|
|||
|
||||
.. image:: serv_bufreg.png
|
||||
|
||||
For two-stage operations, serv_bufreg holds data between stages. This data can be the effective address for branches or load/stores or data to be shifted for shift ops. It has a serial output for streaming out results during stage two and a parallel output that forms the dbus address. serv_bufreg also keeps track of the two lsb when calculating adresses. This is used to check for alignment errors
|
||||
For two-stage operations, serv_bufreg holds data between stages. This data can be the effective address for branches or load/stores or data to be shifted for shift ops. It has a serial output for streaming out results during stage two and a parallel output that forms the dbus address. serv_bufreg also keeps track of the two lsb when calculating adresses. This is used to check for alignment errors. In order to support these different modes, the input to the shift register can come from rs1, the immediate (imm), rs1+imm or looped back from the shift register output. The latter is used for shift operations. For some operations, the LSB of the immediate is cleared before written to the shift register. bufreg also latches and exposes the two LSB bits of the data written to the shift register. These are used to check data/address alignment issues early.
|
||||
|
||||
.. image:: serv_bufreg_int.png
|
||||
|
||||
serv_csr
|
||||
^^^^^^^^
|
||||
|
|
BIN
doc/serv_bufreg_int.png
Normal file
BIN
doc/serv_bufreg_int.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
Loading…
Add table
Add a link
Reference in a new issue