From b48570ad09f4716c945ce689b9ebf3a9a6879bf7 Mon Sep 17 00:00:00 2001 From: eggy Date: Fri, 3 Nov 2023 12:43:52 -0400 Subject: [PATCH] ece222: finish datapath --- docs/2a/ece222.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/2a/ece222.md b/docs/2a/ece222.md index 95f5d13..b1f108b 100644 --- a/docs/2a/ece222.md +++ b/docs/2a/ece222.md @@ -103,5 +103,11 @@ To execute an instruction, the following steps are observed: - decode fields like the op-code, offset - read recoded registers 3. Execute (EX) - - ALU shenanigans + - ALU calculates ADD, SUB, etc, as well as addresses for LDR/STR, sets zero status for CBZ + - branch adder calculates any branch target addresses +4. Memory (ME) + - if memory needs to be reached, either `Write` or `Read` must be asserted to prepare for it + - write to memory +5. Writeback (WB) + - write results to registers from memory, the ALU, or another register