20-Datapath

20-Datapath - Datapaths For the rest of the semester, well...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
Datapaths 1 Datapaths For the rest of the semester, we’ll focus on computer architecture : how to assemble the combinational and sequential components we’ve studied so far into a complete computer. Today, we’ll start with the datapath , the part of the central processing unit (CPU) that does the actual computations.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Datapaths 2 Keep it simple! Abstraction is very helpful in understanding processors. Although we studied how devices like registers and muxes are built, we don’t need that level of detail here. You should focus more on what these component devices are doing, and less on how they work. Otherwise it’s easy to get bogged down in the details, and datapath and control units can be a little intimidating.
Background image of page 2
Datapaths 3 An overview of CPU design We can divide the design of our CPU into three parts: The datapath does all of the actual data processing. An instruction set is the programmer’s interface to CPU. A control unit uses the programmer’s instructions to tell the datapath what to do. Today we’ll look in detail at a processor’s datapath, which is responsible for doing all of the dirty work. An ALU does computations, as we’ve seen before. A limited set of registers serves as fast temporary storage. A larger, but slower, random-access memory is also available.
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Datapaths 4 What’s in a CPU? A processor is just one big sequential circuit. Some registers are used to store values, which form the state. An ALU performs various operations on the data stored in the registers. ALU Registers
Background image of page 4
Datapaths 5 Register transfers Fundamentally, the processor is just moving data between registers, possibly with some ALU computations. To describe this data movement more precisely, we’ll introduce a register transfer language . The objects in the language are registers . The basic operations are transfers , where data is copied from one register to another. We can also use the ALU to perform arithmetic operations on the data while we’re transferring it. ALU Registers
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Datapaths 6 Register transfer language Two-character names denote registers , such as R0, R1, DR, or SA. Arrows indicate data transfers . To copy the contents of the source register R2 into the destination register R1 in one clock cycle: R1 R2 A conditional transfer is performed only if the Boolean condition in front of the colon is true. To transfer R3 to R2 when K = 1: K: R2 R3 Multiple transfers on the same clock cycle are separated by commas. R1 R2, K: R2 R3 Don’t confuse this register transfer language with assembly language, which we’ll discuss next week.
Background image of page 6
Datapaths 7 We can apply arithmetic operations to registers. R1
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 30

20-Datapath - Datapaths For the rest of the semester, well...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online