Presentation is loading. Please wait.

Presentation is loading. Please wait.

CBP 2004-5Comp 1017 Digital Technologies1 Let’s make a Computer … at least the CPU … Pentium 4 Pentium 3 Opteron Ultra Sparc 1 21364 Itanium 2 McKinley.

Similar presentations


Presentation on theme: "CBP 2004-5Comp 1017 Digital Technologies1 Let’s make a Computer … at least the CPU … Pentium 4 Pentium 3 Opteron Ultra Sparc 1 21364 Itanium 2 McKinley."— Presentation transcript:

1 CBP 2004-5Comp 1017 Digital Technologies1 Let’s make a Computer … at least the CPU … Pentium 4 Pentium 3 Opteron Ultra Sparc 1 21364 Itanium 2 McKinley

2 CBP 2004-5Comp 1017 Digital Technologies2 Pentium Data Cache Code Cache Instruction Fetch Instruction Decode Execution Unit

3 CBP 2004-5Comp 1017 Digital Technologies3 Minimalist Computer What do we need to build a computer ? “Execution Unit” (Intel) ALU (Arithmetic Logic Unit) Memory Input Output A good Name

4 CBP 2004-5Comp 1017 Digital Technologies4 Arithmetic Logic Unit Input AInput B Output ALU Integer Execution Unit 5 32 add 1 32 sub

5 CBP 2004-5Comp 1017 Digital Technologies5 Input AInput B Output ALU MMX instructions add bits of images together! Useful for multimedia Multimedia MMX

6 CBP 2004-5Comp 1017 Digital Technologies6 5 32 add 0 1 2 3 4 3 2 5 Processing Idea Nr. 1 Move data from memory Move data into memory 3. 2. 1. Memory DRAM, Hard Disk.. Move data in and out of data memory

7 CBP 2004-5Comp 1017 Digital Technologies7 5 32 add 0 1 2 3 4 3 2 5 Processing Idea Nr.2 IP (Code Memory) mov 3 in from memory mov 2 in from memory add the two numbers mov the result to memory Instruction Memory Program Move instructions into CPU from code memory

8 CBP 2004-5Comp 1017 Digital Technologies8 Registers 0 1 4 6 8 6 8 4 Registers are high-speed memory on the CPU chip Parking places for data on the move AX and BX are used for ALU operations MAR is memory address register, here 4. So result, 6+8=14 will go into memory cell address 4 AX BX MAR

9 CBP 2004-5Comp 1017 Digital Technologies9 Program Memory 2. High Level Language like ‘C’ 3. Assembler Instructions mov ax,[x] mov bx,[y] add ax, bx mov [w],ax w = x + y ; 1. Application Let’s consider a spreadsheet cell which adds two numbers x + y. This cell and its instruction is in memory. But it is REPRESENTED in different ways

10 CBP 2004-5Comp 1017 Digital Technologies10 ip Data Memory Instruction Memory 0 1 4 mar Our computer so far …

11 CBP 2004-5Comp 1017 Digital Technologies11 SAM-2

12 CBP 2004-5Comp 1017 Digital Technologies12 Moving data into Registers Instruction Memory 0 1 2 mar 3 4 mov ax, [1] 8 5 8 7 6 1 BX AX mov ax, [1] mov bx, [2] 7 For example …

13 CBP 2004-5Comp 1017 Digital Technologies13 Moving data into Memory Instruction Memory 0 1 2 mar 3 4 mov [3], ax 8 5 8 7 6 1 BX AX mov [3], ax mov [0], bx 7 For example … 8 7

14 CBP 2004-5Comp 1017 Digital Technologies14 Adding Numbers Instruction Memory 0 1 2 mar 3 4 add ax, bx 8 5 7 6 1 BX AX Add ax,bx 7 For example … … this means ‘ add ax to bx, put the answer in ax’ 8 8 7 15

15 CBP 2004-5Comp 1017 Digital Technologies15 I’ve never wrestled with such a complex problem before It must take a lot of organization and control !

16 CBP 2004-5Comp 1017 Digital Technologies16 Pentium Organization and control

17 CBP 2004-5Comp 1017 Digital Technologies17 Fetch-Execute Cycle 1. Fetch instruction from memory 2. Decode the instruction and read any registers 3. Do any ALU operations (execute units) 5. Write back results to registers (Organization and Control) add ax, bx 4. Do any Memory Access ALU <- ax ALU <- bx ax + bx (Data cache) ax <- ALU None needed

18 CBP 2004-5Comp 1017 Digital Technologies18 add ax, bx add ax 0 1 4 3 2 bx Fetch-Exec : State 1 Instruction Fetch 8 3 7 1 9 3 1 AX BX

19 CBP 2004-5Comp 1017 Digital Technologies19 0 1 4 3 2 Fetch-Exec : State 2 Decode, Register Operations 8 3 7 1 9 add ax, bx add axbx 3 1 3 1 AX BX

20 CBP 2004-5Comp 1017 Digital Technologies20 0 1 4 3 2 Fetch-Exec : State 3 ALU Operation 8 3 7 1 9 add ax, bx add axbx AX BX 3 1 4

21 CBP 2004-5Comp 1017 Digital Technologies21 0 1 4 3 2 Fetch-Exec : State 4 Memory Access 8 3 7 1 9 add ax, bx add axbx AX BX 3 1 4

22 CBP 2004-5Comp 1017 Digital Technologies22 0 1 4 3 2 Fetch-Exec : State 5 Register Write 8 3 7 1 9 add ax, bx add axbx BX 3 1 4 4

23 CBP 2004-5Comp 1017 Digital Technologies23 Fetch-Execute Cycle 1. Fetch instruction from memory 2. Decode the instruction and read any registers 3. Do any ALU operations (execute units) 5. Write back results to registers (Organization and Control) mov ax, [1] 4. Do any Memory Access Read the ‘1’ Put ‘1’ into MAR Data into ax Read memory at addr ‘1’

24 CBP 2004-5Comp 1017 Digital Technologies24 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 1 Instruction Fetch 8 3 7 1 9

25 CBP 2004-5Comp 1017 Digital Technologies25 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 2 Decode, Register Operations 8 3 7 1 9

26 CBP 2004-5Comp 1017 Digital Technologies26 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 3 ALU Operation 1 8 3 7 1 9

27 CBP 2004-5Comp 1017 Digital Technologies27 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 4 Memory Access 1 8 3 7 1 9 8

28 CBP 2004-5Comp 1017 Digital Technologies28 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 5 Register Write 1 8 3 7 1 9 8 8

29 CBP 2004-5Comp 1017 Digital Technologies29 Pentium 5 1 2 3 4 1.Fetch 2.Decode 3.ALU 4.Mem Ops 5.Reg Write

30 CBP 2004-5Comp 1017 Digital Technologies30 The first microprocessor Keypad Lots of Electronics LCD Display Keypad LCD Display Code Memory Programmable Electronics A dedicated design...... or a re- usable design

31 CBP 2004-5Comp 1017 Digital Technologies31


Download ppt "CBP 2004-5Comp 1017 Digital Technologies1 Let’s make a Computer … at least the CPU … Pentium 4 Pentium 3 Opteron Ultra Sparc 1 21364 Itanium 2 McKinley."

Similar presentations


Ads by Google