CMPT 295 - Unit – Microprocessor Design & Instruction Execution

Lecture 26

Last Lecture

And one way to achieve this is by introducing registers in the design of the ISA -> makes machine instructions shorter. Reducing the number of operands may also help (but not always).

Today’s Menu

The Big Picture

Now that we have had a look at a few instruction set architectures (ISA), i.e.,

… let’s step over this interface and explore how the microprocessor is constructed so it can execute these machine 4 instructions

Datapath of a MIPS microprocessor

Sneak preview (how CPU hardware updates the PC in fetch-decode-execute loop): 0x00400000 (from our Lecture 25)

See micro_graph.html

Source: Page 246 in Patterson and Hennessy

Digital circuits

Microprocessor

Source: https://www.newegg.ca/Product/Product.aspx

Source: https://www.elprocus.com/semiconductor-devices-types-and-applications

Logic gates

(Transcriber’s note: I’m sorry but I have no fucking idea how to transcribe this diagram. It is way too complex to describe with plain text, and contains special symbols for electrical components I don’t recognize.)

Source: http://www.cybermike.net/reference/liec_book/Digital/DIGI_3.html

from Quora: 2.5 transistors/logic gate ∴ 640 millions [sic] to ~2 billions [sic] logic gate on 1 microprocessor!

Behaviour of logic gates

https://www.electronics-tutorials.ws/boolean/bool_1.html

https://www.electronics-tutorials.ws/boolean/bool_2.html

Abstracting using black boxes

Abstracting logic gates

Abstracting logic gates – cont’d

(Annotation: Homework: Label input & output line.)

Purpose of buffer gate: to buffer and/or delay and/or strengthen a signal

Propagation delay tpdt_{\text{pd}}

Summary

Next Lecture