Presentation is loading. Please wait.

Presentation is loading. Please wait.

CBP 2005-6Comp 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 2005-6Comp 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 2005-6Comp 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 2005-6Comp 1017 Digital Technologies2

3 CBP 2005-6Comp 1017 Digital Technologies3 CPU Memory Keyboard VDU Computer Program (Code) 1 do this 2 do that 3 now this 4 goto 1

4 CBP 2005-6Comp 1017 Digital Technologies4 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 Inside the CPU

5 CBP 2005-6Comp 1017 Digital Technologies5 Pentium Data Cache Code Cache Instruction Fetch Instruction Decode Execution Unit

6 CBP 2005-6Comp 1017 Digital Technologies6 Minimalist CPU What do we need to build a CPU? “Execution Unit” ALU (Arithmetic Logic Unit) Memory (to store intermediate data) Input Output A good Name

7 CBP 2005-6Comp 1017 Digital Technologies7 Arithmetic Logic Unit Input AInput B Output ALU Integer Execution Unit 5 32 add 1 32 sub

8 CBP 2005-6Comp 1017 Digital Technologies8 Input AInput B Output ALU MMX instructions add bits of images together! Useful for multimedia Multimedia MMX

9 CBP 2005-6Comp 1017 Digital Technologies9 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 store

10 CBP 2005-6Comp 1017 Digital Technologies10 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

11 CBP 2005-6Comp 1017 Digital Technologies11 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

12 CBP 2005-6Comp 1017 Digital Technologies12 ip Data Memory Instruction Memory 0 1 4 mar Our computer so far …

13 CBP 2005-6Comp 1017 Digital Technologies13 Instruction Memory A couple of extra bits Data Memory 0 1 4 Instruction Register Memory Data Register 2 8 34 2 Data Address add ax,bx 1.Line of code goes in 2.Electrical bit signals come out 2. 1. Energize ax Energize bx Select ALU “add"

14 CBP 2005-6Comp 1017 Digital Technologies14 SAM-2

15 CBP 2005-6Comp 1017 Digital Technologies15 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 …

16 CBP 2005-6Comp 1017 Digital Technologies16 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

17 CBP 2005-6Comp 1017 Digital Technologies17 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

18 CBP 2005-6Comp 1017 Digital Technologies18 I’ve never wrestled with such a complex problem before It must take a lot of organization and control !

19 CBP 2005-6Comp 1017 Digital Technologies19 Pentium Organization and control

20 CBP 2005-6Comp 1017 Digital Technologies20 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

21 CBP 2005-6Comp 1017 Digital Technologies21 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

22 CBP 2005-6Comp 1017 Digital Technologies22 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

23 CBP 2005-6Comp 1017 Digital Technologies23 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

24 CBP 2005-6Comp 1017 Digital Technologies24 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

25 CBP 2005-6Comp 1017 Digital Technologies25 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

26 CBP 2005-6Comp 1017 Digital Technologies26 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’

27 CBP 2005-6Comp 1017 Digital Technologies27 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 1 Instruction Fetch 8 3 7 1 9

28 CBP 2005-6Comp 1017 Digital Technologies28 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 2 Decode, Register Operations 8 3 7 1 9

29 CBP 2005-6Comp 1017 Digital Technologies29 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 3 ALU Operation 1 8 3 7 1 9

30 CBP 2005-6Comp 1017 Digital Technologies30 mov ax, [1] mov ax 0 1 4 3 2 1 Fetch-Exec : State 4 Memory Access 1 8 3 7 1 9 8

31 CBP 2005-6Comp 1017 Digital Technologies31 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

32 CBP 2005-6Comp 1017 Digital Technologies32 Pentium 5 1 2 3 4 1.Fetch 2.Decode 3.ALU 4.Mem Ops 5.Reg Write

33 CBP 2005-6Comp 1017 Digital Technologies33 The first microprocessor Keypad Lots of Electronics LCD Display Keypad LCD Display Code Memory Programmable Electronics A dedicated design...... or a re- usable design

34

35 CBP 2005-6Comp 1017 Digital Technologies35


Download ppt "CBP 2005-6Comp 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