Skip to content

Commit

Permalink
feat: add operation summaries
Browse files Browse the repository at this point in the history
  • Loading branch information
natalieagus committed Dec 4, 2024
1 parent 040e8a0 commit 7fc0d80
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 7 deletions.
10 changes: 6 additions & 4 deletions docs/Hardware/i_betacpu.md
Original file line number Diff line number Diff line change
Expand Up @@ -227,10 +227,12 @@ In our Lab however, the output signal of the control unit is 18 bits long. We do
## Beta Datapaths

The $$\beta$$ datapath can be reprogrammed by setting the appropriate control signals depending on the current instruction's `OPCODE`. In general, we can separate the instructions into four categories, and explain the datapath for each:
* The `OP` datapath (Type 1)
* The `OPC` datapath (Type 2)
* Memory access datapath (Type 2)
* Control transfer datapath (Type 2)
* The `OP` datapath (Type 1): ADD, SUB, MUL, DIV, SHL, SHR, SRA, CMPEQ, CMPLT, CMPLTE, AND, OR, XOR (13 operations)
* The `OPC` datapath (Type 2): ADDC, SUBC, MULC, DIVC, SHLC, SHRC, SRAC, CMPEQC, CMPLTC, CMPLTEC, ANDC, ORC, XORC (13 operations)
* Memory access datapath (Type 2): ST, LD, LDR (3 operations)
* Control transfer datapath (Type 2): JMP, BNE, BEQ (3 operations)

**Total: 32 operations**.

## Basic Operation Datapath
### [OP datapath](https://www.youtube.com/watch?v=4T9MR8BSzt0&t=1662s)
Expand Down
6 changes: 3 additions & 3 deletions docs/Labs/lab4.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Singapore University of Technology and Design

Please clone the starter code from this repository, then **open** it with Alchitry Lab.
```
TBC
git clone https://github.com/natalieagus/50002-lab4-beta.git
```

Then, you shall **paste** the implementation of your 32-bit ALU unit created in Lab 3: ALU. Be sure to include **all** files required by your `alu.luc`.
Expand Down Expand Up @@ -60,8 +60,8 @@ The goal of this lab is to build a **fully** functional 32-bit Beta Processor on
* (Part A) **PC** Unit: containing the PC register and all necessary components to support the ISA
* (Part B) **REGFILE** Unit: containing 32 32-bit registers, WASEL, and RA2SEL mux, plus circuitry to compute Z
* (Part C) **CONTROL** Unit: containing the ROM and necessary components to produce all Beta control signals given an `OPCODE`
* **ALU+WDSEL** Unit: containing the ALU and WDSEL, ASEL, BSEL muxes (**given to you**)
* (Part D) Assemble the entire Beta CPU using all subcomponents above
* (Part D) **ALU+WDSEL** Unit: containing the ALU and WDSEL, ASEL, BSEL muxes
* Finally, assemble the entire Beta CPU using all subcomponents above

<img src="/50002/assets/contentimage/lab4/beta_lab.png" class="center_seventy"/><br>

Expand Down

0 comments on commit 7fc0d80

Please sign in to comment.