33
OPERASI DASAR PROSESOR Nadia Printa Tearani (A11.2010.05214) Nur Aji Eka Kharisma (A11.2010.05418) Derry Prima (A11.2010.05711)

Operasi dasar prosesor

Embed Size (px)

Citation preview

Page 1: Operasi dasar prosesor

OPERASI DASAR PROSESOR

Nadia Printa Tearani (A11.2010.05214)

Nur Aji Eka Kharisma (A11.2010.05418)

Derry Prima (A11.2010.05711)

Page 2: Operasi dasar prosesor

Operasi Dasar Prosesor

Operasi-operasi Dasar:Mengambil (fetching) Data dari

MemoriMenyimpan (storing) Data ke

MemoriPertukaran Data Antar-RegisterOperasi Aritmatika & Logika di

Datapath

Page 3: Operasi dasar prosesor

Mengambil Data dari MemoriInstruksi:

LD R2,(R1) ; R2 M[R1]

Langkah-langkah:1. MAR R12. Read3. Tunggu sinyal MFC

// MFC = Memory Function Completed// Pada saat MFC aktif:// MDR M[MAR]

4. R2 MDR

Y

Z

MDR

MAR

PC

TEMP

R2

R1

IR

InstructionDecoder

ALUCarry-in

Add

Sub

XOR

Address lines

Data lines

Read MFC

Page 4: Operasi dasar prosesor

Menyimpan Data ke Memori

Instruksi:ST (R1),R2 ; M[R1] R2

Langkah-langkah:1. MAR R12. MDR R2, Write3. Tunggu sinyal MFC

// MFC = Memory Function Completed// Pada saat MFC aktif:// M[MAR] MDR

Y

Z

MDR

MAR

PC

TEMP

R2

R1

IR

InstructionDecoder

ALUCarry-in

Add

Sub

XOR

Address lines

Data lines

Write MFC

Page 5: Operasi dasar prosesor

Pertukaran Data Antar-RegisterInstruksi:

MOV R4,R1 ; R4 R1

Langkah-langkah:1. Enable output of R1

// setting R1out to 1

2. Enable input of R4 // setting R4in to 1R4

R1

X

X

X

X

R1in

R1out

R4in

R4out

Page 6: Operasi dasar prosesor

Operasi Aritmatika dan LogikaInstruksi:

ADD R1,R2 ; R1 R1 + R2

Langkah-langkah:1. R1out, Yin

2. R2out, Add, Zin

3. Zout, R1in

Y

Z

Ri

ALU

A B

X

X

X

X

X

X

Riin

Riout

Yin

Yout

Zin

Zout

Add

Page 7: Operasi dasar prosesor

Operasi (A&L): Bagian dari Pertukaran DataKomponen-komponen Datapath:

Register: tempat penyimpanan data ALU: tempat pemrosesan aritmatika & logika Bus: penghubung antar-register & antara register-ALU

Eksekusi Instruksi merupakan kombinasi pertukaran data antara:

Register Bus Register Register Bus ALU Register Bus Memori

Pertukaran data dilakukan dengan cara mengaktifkan gerbang-gerbang register dengan menggunakan sinyal-sinyal kendali (PCout, PCin, dst.)

Selain itu, juga ada sinyal-sinyal kendali yang berhubungan dengan komponen-komponen lain (Memori: Read, Write; ALU: Add, Sub, Set Carry-in, dst.)

Page 8: Operasi dasar prosesor

Komponen-komponen Datapath:

Register: tempat penyimpanan dataALU: tempat pemrosesan aritmatika & logikaBus: penghubung antar-register & antara register-ALUEksekusi Instruksi merupakan kombinasi pertukaran data antara:Register Bus RegisterRegister Bus ALURegister Bus MemoriPertukaran data dilakukan dengan cara mengaktifkan gerbang-gerbang register dengan menggunakan sinyal-sinyal kendaliSelain itu, juga ada sinyal-sinyal kendali yang berhubungan dengan komponen-komponen lain

Page 9: Operasi dasar prosesor

Tahapan Eksekusi InstruksiInstruksi:

Add R1,(R3) ; R1 R1 + M[R3]

Langkah-langkah:1. Fetch instruksi

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

2. Fetch operand #1 (isi lokasi memori yg ditunjuk oleh R3)4. R3out, MARin, Read

5. R1out, Yin, WMFC

3. Lakukan operasi penjumlahan6. MDRout, Add, Zin

4. Simpan hasil penjumlahan di R17. Zout, R1in, End

Page 10: Operasi dasar prosesor

1. Fetch instruksi

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC3. MDRout, IRin

Y

Z

MDR

MAR

PC

TEMP

R3

R1

IR

InstructionDecoder

ALUCarry-in

Add

Address lines

Data lines

Control lines

00000000

1

PC+1

Page 11: Operasi dasar prosesor

2. Fetch operand #1

Y

Z

MDR

MAR

PC=PC+1

TEMP

R3

R1

IR

InstructionDecoder

ALU

Address lines

Data lines

4. R3out, MARin, Read5. R1out, Yin, WMFC

Page 12: Operasi dasar prosesor

3. Lakukan operasi penjumlahan

Y=R1

Z

MDR=M[R3]

MAR

PC=PC+1

TEMP

R3

R1

IR

InstructionDecoder

ALU

Address lines

Data lines

Carry-in

Add

Zin

6. MDRout, Add, Zin

Page 13: Operasi dasar prosesor

4. Simpan hasil penjumlahan

Address lines

Data lines

Y=R1

Z=R1+M[R3]

MDR=M[R3]

MAR

PC=PC+1

TEMP

R3

R1

IR

InstructionDecoder

ALU

7. Zout, R1in, End

Page 14: Operasi dasar prosesor

Tahapan Eksekusi “Branching”Unconditional (JMP Loop)

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. PCout, Yin

5. Offset-field-of-IRout, Add, Zin // PC PC + Offset

6. Zout, PCin, End

Conditional (contoh: BRNeg Loop)7. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

8. Zout, PCin, WMFC

9. MDRout, IRin

4. PCout, Yin , If N=0 then End // take the branch?

5. Offset-field-of-IRout, Add, Zin // PC PC + Offset

6. Zout, PCin, End

Page 15: Operasi dasar prosesor

LD Rd,X

Page 16: Operasi dasar prosesor

Tahapan Eksekusi Instruksi: LD Rd,XInstruksi:

LD R16,X ; R16 M[X]

Langkah-langkah:1. Fetch instruksi

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

2. Fetch operand dari lokasi memori yang ditunjuk oleh X4. Xout, MARin, Read

5. WMFC

3. Lakukan operasi ALU4. Simpan hasil penjumlahan di R16

6. MDRout, R16in, End

Page 17: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. Xout, MARin, Read

5. WMFC6. MDRout, R16in, End

Tahapan Eksekusi Instruksi: LD Rd,X

Y

Z

MDR

MAR

PC

TEMP

R16

X

IR

InstructionDecoder

ALUSet

Carry-in

Add

Address lines

Data lines

Control lines

00000000

1

PC+1

PCout

Read

MARin

Zin

Clear Y

Page 18: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. Xout, MARin, Read

5. WMFC6. MDRout, R16in, End

Tahapan Eksekusi Instruksi: LD Rd,X

Y

Z = PC+1

MDR

MAR

PC

TEMP

R16

X

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

Zout

WMFC

PCin

Page 19: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. Xout, MARin, Read

5. WMFC6. MDRout, R16in, End

Tahapan Eksekusi Instruksi: LD Rd,X

Y

Z

MDR

MAR

PC+1

TEMP

R16

X

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

MDRout

IRin

Page 20: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. Xout, MARin, Read

5. WMFC6. MDRout, R16in, End

Tahapan Eksekusi Instruksi: LD Rd,X

Y

Z

MDR

MAR

PC+1

TEMP

R16

X

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

Read

MARin

Xout

Page 21: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. Xout, MARin, Read

5. WMFC6. MDRout, R16in, End

Tahapan Eksekusi Instruksi: LD Rd,X

Y

Z

MDR

MAR

PC+1

TEMP

R16

X

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

WMFC

Page 22: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. Xout, MARin, Read

5. WMFC6. MDRout, R16in, End

Tahapan Eksekusi Instruksi: LD Rd,X

Y

Z

MDR

MAR

PC+1

TEMP

R16

X

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

MDRout

R16in

Page 23: Operasi dasar prosesor

ADD Rd,Rs

Page 24: Operasi dasar prosesor

Tahapan Eksekusi Instruksi: ADD Rd, RsInstruksi:

ADD R16,R17 ; R16 R16 + R17

Langkah-langkah:1. Fetch instruksi

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

2. Fetch operand ke-1 (R16)4. R16out, Yin

3. Fetch operand ke-2 (R17) dan Lakukan operasi ALU5. R17out, Add, Zin

4. Simpan hasil penjumlahan di R166. Zout, R16in, End

Page 25: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. R16out, Yin

5. R17out, Add, Zin

6. Zout, R16in, End

Tahapan Eksekusi Instruksi: ADD Rd, Rs

Y

Z

MDR

MAR

PC

TEMP

R16

R17

IR

InstructionDecoder

ALUSet

Carry-in

Add

Address lines

Data lines

Control lines

00000000

1

PC+1

PCout

Read

MARin

Zin

Clear Y

Page 26: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. R16out, Yin

5. R17out, Add, Zin

6. Zout, R16in, End

Tahapan Eksekusi Instruksi: ADD Rd, Rs

Y

Z = PC+1

MDR

MAR

PC

TEMP

R16

R17

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

Zout

WMFC

PCin

Page 27: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. R16out, Yin

5. R17out, Add, Zin

6. Zout, R16in, End

Tahapan Eksekusi Instruksi: ADD Rd, Rs

Y

Z

MDR

MAR

PC+1

TEMP

R16

R17

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

MDRout

IRin

Page 28: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. R16out, Yin

5. R17out, Add, Zin

6. Zout, R16in, End

Tahapan Eksekusi Instruksi: ADD Rd, Rs

Y

Z

MDR

MAR

PC+1

TEMP

R16

R17

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

Yin

R16out

Page 29: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. R16out, Yin

5. R17out, Add, Zin

6. Zout, R16in, End

Tahapan Eksekusi Instruksi: ADD Rd, Rs

Y=R16

Z

MDR

MAR

PC+1

TEMP

R16

R17

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

Zin

R17out

Add

Page 30: Operasi dasar prosesor

1. PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin

2. Zout, PCin, WMFC

3. MDRout, IRin

4. R16out, Yin

5. R17out, Add, Zin

6. Zout, R16in, End

Tahapan Eksekusi Instruksi: ADD Rd,

Rs

Y=R16

Z=R16+R17

MDR

MAR

PC+1

TEMP

R16

R17

IR

InstructionDecoder

ALU

Address lines

Data lines

Control lines

R16out

Zout

Page 31: Operasi dasar prosesor

Peningkatan Kinerja Prosesor

Page 32: Operasi dasar prosesor

Multiple-bus: salah satu

cara peningkatan

kinerja

MDR

MAR

PC

TEMP

RegisterFile

IR

InstructionDecoder

AL

U

A B C

Datalines

Addresslines

Memory Bus

Add R1,R2,R3 ;R1R2+R3

Page 33: Operasi dasar prosesor

Bandingkan dengan

Organisasi Single-bus

Add R1,R2,R3 ;R1R2+R3

Y

Z

MDR

MAR

PC

TEMP

R3

R1

IR

InstructionDecoder

ALU

R2