1
0
mirror of https://github.com/olofk/serv.git synced 2026-01-16 08:13:57 +00:00

159 Commits

Author SHA1 Message Date
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
554bdccba0 Silence some warnings 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
3f81f07db3 Clarify immdec_ctrl[1] 2020-11-10 15:16:19 +01:00
Olof Kindgren
8faf0cf33b Simplify and explain csr_imm_en 2020-11-10 15:16:19 +01:00
Olof Kindgren
ee6a86705d Set size of WITH_CSR to avoid Quartus warning 2020-09-29 17:52:02 +02:00
Olof Kindgren
f10cb89ae4 Fix double-defined result_lt wire 2020-09-29 14:12:57 +02:00
Olof Kindgren
25e86fdd3c Small optimization of instruction fetching logic 2020-08-26 16:45:40 +02:00
Olof Kindgren
3aa1a2c6e5 Simplify and document mstatus/mcause assignments 2020-08-26 16:45:40 +02: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
119473d506 Move CSR_SOURCE_ constants into serv_csr.v 2020-08-13 23:37:11 +02:00
Olof Kindgren
707f63ae8c Rename ser_shift to serv_shift for consistency 2020-05-26 22:48:40 +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
9606e3503d Inline shift_reg 2020-05-26 22:43:23 +02:00
Gwenhael Goavec-Merou
2a76adc8db Add compatibility with Xilinx ISE 2020-05-06 20:19:52 +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
09c7d6dbbf Remove FSM from serv_state 2020-04-05 00:22:44 +02:00
Olof Kindgren
8dd75fa752 Stop using states in logic expressions 2020-04-04 23:44:29 +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
dh73
2a7596b51d Declare variables/nets before referenced 2020-03-25 23:31:55 +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
Olof Kindgren
ea1936710e Inline ser_lt 2020-02-19 13:15:18 +01:00
Olof Kindgren
afb7e641dd Inline adders 2020-02-19 11:00:55 +01:00
Olof Kindgren
7f16f17ca5 Optimize CSR immediate handling 2020-02-19 10:02:48 +01:00
Olof Kindgren
badcd7ea55 Remove duplicate signals in serv_state 2020-02-17 23:48:39 +01:00
Olof Kindgren
36746d3890 Remove unused signals 2020-02-17 23:01:49 +01:00
Olof Kindgren
5aa1fbe709 Stop depending on run state 2019-12-08 22:51:28 +01:00
Olof Kindgren
6067b0e684 Use one-hot encoding for ALU rd sel 2019-12-07 23:36:36 +01:00
Olof Kindgren
eb5d25ea1c Move op_b mux to alu 2019-12-07 23:09:04 +01:00
Olof Kindgren
b516c10d72 Prepare for RF write on RF read request and optimize state FSM 2019-12-07 23:01:24 +01:00
Olof Kindgren
31c138e4a1 Create RAM and RF IF with configurable widths 2019-12-05 22:35:53 +01:00
Olof Kindgren
e93fd0d30e Fix compile errors with RISCV_FORMAL 2019-12-04 23:42:40 +01:00
Olof Kindgren
3179cfb107 Optimize alu eq_r and lt_r 2019-12-03 10:28:27 +01:00
Olof Kindgren
8b82c85fb6 Create toplevel without RF 2019-11-20 18:26:04 +01:00
Olof Kindgren
4532c8dafd Move rd selection to rf_if 2019-11-20 18:26:04 +01:00