Title: Instruction Set Architecture
1Instruction Set Architecture
2Topics for Discussion
- Review of Chapter 1 introduction
- What is computer organization?
- What will you learn in this course?
- Motherboard
- CPU microprocessor
- Memory
- Instruction set architecture
- Stored program computer
- Interface between software and hardware
- Instructions
- Design principles
- Instructions, registers, and memory
- Simple instructions types and formats
3Computer Organization
- Is the study of major components of a modern
digital computer, their organization and
assembly, and the architecture and inner workings
of these components. - It also deals with design principles for a good
performance.
4What will you learn in this course?
- How are high level language (HLL) translated to
the language of the hardware. - How does hardware execute instructions?
- What is the interface between hardware and
software? - How does the software instruct (or control) the
hardware to perform the needed function? - What determines the performance of a program?
- How can a program improve performance?
- Original program, its translation, effectiveness
of the hardware, other special techniques such as
pipelining - What techniques can by hardware designers to
improve performance?
5Mother Board
- Figure 1.10
- Contains packages of integrated circuit chips (IC
chips) including a processor, cache (several),
memory (DRAM), connections for IO devices
(networks, disks)
6Central Processing Unit (CPU)
- See Fig 1.9
- Example Intel 80386? 80486?Pentium
- Main components of a CPU are datapath and
control unit - Datapath is the component of the processor that
performs (arithmetic) operations - Control is the component of the processor that
commands the datapath, memory , IO device
according to instruction of the program - Cache provides but fast memory that acts as a
buffer for slower /larger memory outside the chip.
7IC chip manufacturing process
- Lets discuss Fig. 1.14 and 1.15
- Silicon is a semiconductor by adding appropriate
elements, it can be turned into a conductor,
insulator or can be made to switch between the
two.
8Instruction set Architecture
- An important abstraction between hardware and
software. - Lets discuss this concept.
- Computer operation is historically called an
instruction. - Instructions stored similar to data in a memory
give rise to an important foundational concept
called the stored program computer.
9C to MIPS instruction
Design principle 1 simplicity favors
regularity In the above example all instructions
have 3 operands
10Register set
- Where do the data get stored in the CPU?
- Named locations called registers? How many?
Typical small compared to memory sizes. - Registers MIPS-32 has 32 register
- Denoted by s0, s1, etc. s0, s5
- Temporary registers are denoted by t0, t1
11C to MIPS instruction (Take 2 with registers)
Design principle 2 Smaller is faster Memory
available as registers is 32 in number
12Memory Operations
- Data and instructions are stored in memory
outside the CPU. - Data is loaded from memory and stored in memory.
- Load word (lw)
- Store word (sw)
- 32 resgiters
- 230 words or 232 addressable locations or bytes
13C language to Memory instructions
Base register concept base register is s3 and
Offset of 32 for 8 words and offset of 48 for 12
words
14Instruction Types
- add and sub
- lw and sw
- Now lets see how we can deal with a constant
value data. - Consider C language statement x x 4
- Too complex
- lw t0, AddrConst(s1)
- add s3,s3,t0
- Instead how about
- addi s3,s3,4
- Summary is in Fig.2.4
- Design principle 3 Make the common case fast.
Example addi instead of add an constant from
memory.
15Instruction format R type
Can we use the same format for addi and add? Then
we will Have only 11 bit constant
16Instruction format I type
Design principle 4 good design demands good
compromise Keep instruction length same needing
different formats I and R type are examples
17Summary
- Figure 2.7 very nicely summarizes all we learned
so far. - MIPS operands
- MIPS memory
- MIPS Assembly language
- MIPS instructions type and formats
- And of course, the four design principles.