Olof Kindgren
c7fc57213c
Avoid releasing trap signal too early
...
The trap signal is used my the mux in serv_rf_if to decide which
registers to write to. If the trap signal is dropped too early,
the destination address changes while the register is still being
written to.
2023-10-31 22:21:12 +01:00
Olof Kindgren
9be55f5cad
Set align parameter to the value of compressed by default
2022-12-25 21:34:48 +01:00
Olof Kindgren
73508bc5de
Expose with_csr in servant
2022-07-26 00:28:53 +02:00
Abd
1beb9d33ec
privilege tests fixed for rv32i
2022-07-26 00:28:53 +02:00
Abd
2655861447
Compressed Extension for SERV
2022-06-01 13:38:24 +02:00
Olof Kindgren
d910becd7f
Move dbus_dat/rs2/shamt storage to bufreg2
2022-01-02 22:10:33 +01:00
Olof Kindgren
f04a510393
Remove unused parameter from serv_mem_if
2022-01-01 22:50:28 +01:00
Olof Kindgren
9c4bdd4bfe
Simplify branch_op/slt_op signals
2021-10-08 22:25:24 +02:00
Olof Kindgren
9d3ebf3e96
Replace mem_op with dedicated control signals
2021-10-05 12:52:29 +02:00
Zeeshan Rafique
8843005407
updated vars declaration for modelsim ( #63 )
2021-10-03 23:15:54 +02:00
Olof Kindgren
3971ca942e
Fix up RVFI
2021-08-27 13:10:06 +02:00
Olof Kindgren
d2a4243033
Add reset for new_irq register
2021-08-27 13:10:06 +02:00
Zeeshan Rafique
6e802cb9bc
M-extension support for SERV
...
* modified serv(ant) for MDU
* added dependency for mdu
* M-extension for SERV
* Updated README for running RV32IM compliance tests
* waive some lint warnings related to mdu
* added mdu param for arty_a7_35t
2021-08-20 23:45:19 +02:00
Olof Kindgren
c2cdd44f73
Expose and document PRE_REGISTER
2021-06-05 22:56:37 +02:00
Olof Kindgren
f373d7bcb6
Reuse immediate regs for RF addresses
2021-05-16 00:09:18 +02:00
Olof Kindgren
548b7fbb41
remove redundant ALU control signal
2021-03-14 23:22:50 +01:00
Olof Kindgren
7624466ddd
Optimize serv_rf_ram_if
2021-02-15 08:50:24 +01:00
Olof Kindgren
9a0b0e877c
Move shifter to mem_if
...
This allows reusing the data bus registers for shift amount
2021-02-06 23:24:23 +01:00
Olof Kindgren
6fbdea58d6
Optimize trap handling
2021-01-23 22:42:26 +01:00
Olof Kindgren
e4b773c17b
Syntax fixes
2021-01-18 22:47:28 +01:00
Olof Kindgren
5e4181d204
Optimize shift operations
2021-01-18 22:46:51 +01:00
Olof Kindgren
d5febe8f63
Simplify and document trap handling
2021-01-18 22:38:07 +01:00
Olof Kindgren
25fa6fa83b
Clean up and document serv_mem_if
2021-01-02 00:02:23 +01:00
Olof Kindgren
ca1a07f684
Document and clean up interface of serv_immdec
2020-12-29 23:35:17 +01:00
Olof Kindgren
a960fd768b
Remove redundant bufreg_loop control signal
2020-12-22 22:13:57 +01:00
Olof Kindgren
c9f41b54e8
Optimize init signal
2020-12-22 22:13:57 +01:00
Olof Kindgren
116e370589
Reverse polarity of bufreg_hold signal
2020-12-06 22:39:04 +01:00
Olof Kindgren
aa16bc40b6
Move ibus_cyc handling to serv_state
2020-12-02 16:19:34 +01:00
Olof Kindgren
fd79a2ea0c
Use cnt0 in serv_ctrl
2020-12-01 22:40:52 +01:00
Olof Kindgren
bbe3e56ab2
Decouple ibus_cyc and ibus_ack
2020-11-30 23:13:11 +01:00
Olof Kindgren
90ce4ff1af
Syntax and reset fixes for ModelSim
2020-11-10 15:16:19 +01:00
Olof Kindgren
c1b8471678
Add reset_strategy parameter
...
The reset_strategy parameter controls how much reset to apply to
SERV. It can be set to MINI for the default behaviour, or NONE to
only apply reset where absolutely needed and rely on POR to clear
FFs
2020-11-10 15:16:19 +01:00
Olof Kindgren
44287ed244
Remove unused reset input from serv_alu
2020-11-10 15:16:19 +01:00
Olof Kindgren
6aeb39c7ac
Clean up port maps in serv_top
2020-11-10 15:16:19 +01:00
Olof Kindgren
3751b58253
Clean up serv_csr interface
2020-11-10 15:16:19 +01:00
Olof Kindgren
cc42437e0f
Prepare for alternative immediate decoder
2020-11-10 15:16:19 +01:00
Olof Kindgren
fa6c420b10
Remove redundant mstatus register
2020-08-26 16:45:40 +02:00
Olof Kindgren
915cdf7933
Move RF address decoding to serv_immdec
2020-08-17 13:00:29 +02:00
Olof Kindgren
88a1a43438
Refactor and Use ALU subtractor for comparisons
2020-08-13 23:37:11 +02:00
Olof Kindgren
1c4e793885
Move CSR immediate decoder to immdec
2020-08-13 23:37:11 +02:00
Olof Kindgren
8775b321d9
Move jump decision logic to serv_state
2020-08-13 23:37:11 +02:00
Olof Kindgren
a614e427b8
Move immediate decoder to separate module
2020-08-13 23:37:11 +02:00
Olof Kindgren
188fd2ecc8
Restore nettype to wire in toplevels
...
This is needed to prevent breaking sources following SERV that
don't handle nettype properly
2020-05-26 22:46:01 +02:00
Olof Kindgren
fda7dd288a
Optimize enable signal for mem_if buffers
2020-04-15 22:48:28 +02:00
Olof Kindgren
1d311edb7d
Make counter internal in serv_state
2020-04-15 10:29:50 +02:00
Olof Kindgren
9a8dcde030
Simplify o_dbus_adr assignment
2020-04-03 22:58:24 +02:00
Olof Kindgren
6b0e4fb3ea
Disable misalignment traps when CSR is disabled
2020-03-27 08:55:34 +01:00
Olof Kindgren
726e520cce
Fix lint warnings when CSR is disabled
2020-03-25 23:32:12 +01:00
Olof Kindgren
3e9e25e984
Avoid resetting bufreg
2020-03-03 09:21:55 +01:00
Olof Kindgren
b48b02b8df
Add parameter to disable CSR/interrupts
...
Also disables timer in servant if CSR/interrupts are disabled
2020-03-02 16:17:26 +01:00