SDS and boolean algebra

SDS

The hardware underlying almost every processor is a Synchronous Digital System(SDS).

  • Synchronous: All operations coordinated by a central clock
  • Digital: Represent all values by discrete values— specifically, as binary digits 1 and 0

boolean signals

On a chip/PC board, wires (i.e., electrical nodes) provide electrical signals and are used to represent variables. A wire can take on different values at different points in time.

  • Use voltage levels to signal 0 or 1 (why not choose 2 or more? good noise immunity; Moore’s Law;)

Combinational Logic circuits

  • Output is a function of the inputs only.
  • Similar to a pure function in mathematics, y = f(x).
  • No way to store information from one invocation to the next, no side effects
    logic gates: AND, OR and NOT
    ![[Pasted image 20240626153741.png]]
    example: building a Equality Compare Circuit
  • Recall the RISC-V instruction: beq rs1, rs2, label
  • Truth Table -> Gate Diagram:
    1. Construct the truth table for the function definition by enumerating all input/output pairs.
    1. then, use the truth table to construct the gate diagram.
      ![[Pasted image 20240627113159.png]]
      ![[Pasted image 20240627113208.png]]

boolean algebra

![[Pasted image 20240627123736.png]]

other logic gates

![[Pasted image 20240627124743.png]]