From 0d5bc0c3c13bf33fa748f5f244699b3c2b3a212f Mon Sep 17 00:00:00 2001 From: Olof Kindgren Date: Wed, 26 Aug 2020 16:45:22 +0200 Subject: [PATCH] Document serv_ctrl --- doc/index.rst | 9 ++++++++- doc/serv_ctrl_int.png | Bin 0 -> 48574 bytes 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 doc/serv_ctrl_int.png diff --git a/doc/index.rst b/doc/index.rst index fbfb4b9..db44beb 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -77,7 +77,14 @@ serv_ctrl .. image:: serv_ctrl.png -serv_ctrl keeps track of the current PC and contains the logic needed to calculate the next PC. +serv_ctrl keeps track of the current PC and contains the logic needed to calculate the next PC. The PC is stored in shift register with a parellel output connected to the instruction bus. New instructions are fetched by asserting o_ibus_cyc until there is a response on i_ibus_ack. Instruction fetches occur when the reset signal is deasserted, which is what gets SERV started, or when the PC has finished updating its value. + +The new PC can come from three sources. For normal instructions, it is incremented by four, which is the next 32-bit address. Jumps can be absolute or relative to the current PC. Absolute jumps are precalculated in serv_bufreg and written directly to the PC. PC relative jumps have the offset part precalculated in serv_bufreg which gets added to the current PC before storing as the new PC. The third source for the new PC comes from the CSR registers when entering or returning traps. + +Some operations (LUI, AUIPC, jumps, entering or returning from traps) also update the destination register through o_rd. In the case of misaligned instruction traps, the invalid PC is written to o_bad_pc to be passed to mtval. + +.. image:: serv_ctrl_int.png + serv_decode ^^^^^^^^^^^ diff --git a/doc/serv_ctrl_int.png b/doc/serv_ctrl_int.png new file mode 100644 index 0000000000000000000000000000000000000000..292145e8a19d88a819e3e9a0a2db4619e7ff898b GIT binary patch literal 48574 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 literal 0 HcmV?d00001