struktur& fungsi cpu (i) - littleradita's blog | just … mengertistrukturdanfungsicpu...

43
1 Pertemuan 2 Organisasi Komputer II Struktur & Fungsi CPU (I)

Upload: lykhuong

Post on 08-Mar-2019

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

1

Pertemuan 2Organisasi Komputer II

Struktur & FungsiCPU (I)

Page 2: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

2

Menjelaskan tentang komponenutama CPU dan Fungsi CPU

Membahas struktur dan fungsiinternal prosesor, organisasi ALU, control unit dan register

Menjelaskan fungsi prosesor dalammenjalankan instruksi-instruksi mesin

Page 3: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

3

Mengerti struktur dan fungsi CPU yaitudapat melakukan fetch instruksi, interpreter instruksi, fetch data, eksekusidan menyimpan kembali. Serta strukturdari register macam-macam register dan fungsinya.Mengerti aliran data pada sikluspengambilan, siklus tak langsung, siklusinterrupt, mengerti pipelining danmengerti teknik-teknik menanganipercabangan pada pipelining

Page 4: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

4

Central Processing UnitMerupakan komponen terpenting darisistem komputerKomponen pengolah data berdasarkan instruksi yang diberikankepadanyaDalam mewujudkan fungsi dantugasnya, CPU tersusun atasbeberapa komponen

Page 5: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

5

Fetch Instruction/Mengambil instruksi, CPU harus membaca instruksi dari memori.Interpret Data/Membaca Data, eksekusisuatu instruksi mungkin memerlukanpembacaan data dari memori atau modulI/OFetch Data/Mengambil Data, eksekusisuatu instruksi mungkin memerlukanpengambilan data dari memori atau modulI/O.

Page 6: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

6

Process Data/Mengolah Data, eksekusi suatu instruksi mungkinmemerlukan operasi aritmatika ataulogika terhadap data.Write Data/Menulis Data, hasileksekusi mungkin memerlukanpenulisan data ke memori.

Page 7: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

7

Agar dapat melakukan tugas,CPU harus:CPU menyimpan data untuk sementara waktu.CPU harus menyimpan lokasi instruksi terakhirsehingga CPU dapat mengambil instruksiberikutnya.CPU perlu menyimpan instruksi dan data untuksementara waktu pada saat instruksi sedangberlangsung.

CPU memerlukan memori internal berukurankecil yang dikenal dengan register

Page 8: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

8

Arithmetic and Logic Unit (ALU)

Control Unit

Registers

CPU Interconnections

Page 9: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

9

Arithmetic and Logic Unit

Bertugas membentuk fungsi fungsipengolahan data komputer.ALU sering disebut mesin bahasa(language machine) karena bagian inimengerjakan instruksi instruksi bahasamesin yang diberikan padanya. Seperti istilahnya ALU terdiri dari duabagian, yaitu unit arithmetika dan unit logika boolean, yang masing masingmemiliki spesifikasi tugas tersendiri.

Page 10: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

10

Bertugas mengontrol operasi CPU dansecara keseluruhan mengontrol komputersehingga terjadi sinkronisasi kerja antarkomponen dalam menjalankan fungsifungsi operasinya.

Tanggung jawab unit kontrol lainnyaadalah mengambil instruksi instruksi darimemori utama dan menentukan jenisinstruksi tersebut.

Page 11: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

11

Registers

Media penyimpan internal CPU yang digunakan saat proses pengolahandata.

Memori ini bersifat sementara, biasanya digunakan untukmenyimpan data saat diolah ataupundata untuk pengolahan selanjutnya.

Page 12: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

12

CPU Interconnections

Sistem koneksi dan bus yang menghubungkan komponen internal dan bus bus eksternal CPU

Komponen internal CPU yaitu ALU, unit kontrol dan register register.

Komponen eksternal CPU : sistemlainnya, seperti memori utama, pirantimasukan/keluaran

Page 13: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

13

Page 14: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

14

Page 15: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

15

Lintasan perpindahan data dan kontrollogika digambarkan termasuk elemen yang diberi label bus CPU internal, elemen inidibutuhkan untuk memindahkan data antara bermacam-macam register denganALU, karena pada kenyataannya ALU hanya beroperasi pada data yang beradadalam memori CPU internal.Menunjukkan elemen-elemen dasar ALU

Page 16: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

16

Menjalankan program program yang disimpan dalam memori utama dengan caramengambil instruksi instruksi, mengujiinstruksi tersebut dan mengeksekusinya satupersatu sesuai alur perintah.

Pandangan paling sederhana proseseksekusi program adalah dengan mengambilpengolahan instruksi yang terdiri dari dualangkah, yaitu :operasi pembacaan instruksi (fetch) danoperasi pelaksanaan instruksi (execute)

Page 17: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

17

Sistem komputer menggunakan hirarkimemori.Pada tingkatan yang atas, memori yang lebih cepat, lebih kecil dan lebih mahal(per bit)Di dalam CPU terdapat sekumpulanregister yang tingkatan memorinya beradadi atas memori utama dan cacheApa fungsi register pada CPU???

Page 18: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

18

User-visible RegistersRegister ini memungkinkan pemrogram bahasamesin dan assembler meminimalkan referensimain memori dengan cara mengoptimasipenggunaan register

Control and Status RegisterRegister ini digunakan oleh unit kontrol untukmengontrol operasi CPU dan program sistemoperasi untuk mengontrol eksekusi program.

Tidak terdapat pemisahan yang jelas antarakedua jenis register di atas

Page 19: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

19

Adalah register yang dapatdireferensikan dengan menggunakanbahasa mesin yang dieksekusi CPUKategorinya;

General PurposeDataAlamatKode-kode Kondisi

Page 20: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

20

Dapat digunakan untuk berbagai fungsioleh pemrogram.Dapat berisi operand sembarang opcode.Pada kasus tertentu, dapat digunakanuntuk fungsi-fungsi pengalamatan(mis:register indirect, displacement).Pada kasus lainnya, terdapat partial ataubatasan yang jelas antara register data dengan register alamat.

Page 21: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

21

Register data hanya dapat dipakai untukmenampung data dan tidak dapat dipakaiuntuk kalkulasi dan alamat operand.Register alamat menyerupai general-purpose register, atau register-register tersebut dapat digunakan untuk mode pengalamatan tertentu.Contoh : segment pointer, register index, stack pointer

Page 22: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

22

Bermacam-macam register CPU yang digunakan untuk mengontroloperasi CPU.Non-visible vs visible ?Tidak visible bagi penggunaVisible terhadap instruksi mesin yang dieksekusi pada mode kontrol atausistem operasi

Page 23: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

23

Program Counter (PC) atau PencacahProgram

Berisi alamat instruksi yang akan diambilInstruction Register (IR)

Berisi instruksi yang terakhir diambilMemori Address Register (MAR)

Berisi alamat sebuah lokasi dalam memoriMemori Buffer Register (MBR)

Berisi sebuah word data yang akan dituliskanke dalam memori atau word yang terakhirdibaca

Page 24: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

24

Adalah semua rancangan CPU mencakup sebuah register atausekumpulan register.Berisi informasi status.Berisi kode kondisi dan informasistatus lainnya

Page 25: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

25

SignBerisi bit tanda hasil operasi aritmatika terakhir, negatif atau positif

ZeroDiset bila hasil sama dengan nol

CarryDiset apabila operasi yang dihasilkan di dalamcarry (penambahan) ke dalam bit yang lebihtinggi atau borrow (pengurangan) dari bit yang lebih tinggi.

Page 26: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

26

EqualDisetel apabila hasil pembandingan logikanyasama

OverflowDigunakan untuk mengindikasikan overflow perhitungan operasi aritmatika

Interrupt Disable/EnableDigunakan untuk mengizinkan atau mencegahintterupt

SupervisorMengindikasikan apakah CPU sedangmengeksekusi dalam mode user atausupervisor.

Page 27: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

27

Terdapat beberapa register lain yang berkaitan dengan status dan kontrol yang dapat ditemukan dalam rancangan CPU, mis : informasi status tambahan (blokkontrol proses), register vektor interruptJumah informasi kontrol yang harusberada di dalam register dan jumlah yang berada dalam memori dapat ditentukan.

Page 28: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

28

Terdiri dari siklus fetch dan sikluseksekusi

Page 29: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

29

Pada setiap siklus instruksi, CPU awalnya akan membaca instruksi darimemori

Terdapat register dalam CPU yang berfungsi mengawasi dan menghitunginstruksi selanjutnya, yang disebutProgram Counter (PC)

PC akan menambah satu hitungannyasetiap kali CPU membaca instruksi

Page 30: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

30

Instruksi instruksi yang dibaca akandimuat dalam register instruksi (IR).

Instruksi instruksi ini dalam bentuk kodekode binner yang dapat diinterpretasikanoleh CPU kemudian dilakukan aksi yang diperlukan

Page 31: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

31

CPU Memori, perpindahan data dari CPU ke memori dan sebaliknya.CPU I/O, perpindahan data dari CPU kemodul I/O dan sebaliknya.Pengolahan Data, CPU membentuksejumlah operasi aritmatika dan logikaterhadap data.Kontrol, merupakan instruksi untukpengontrolan fungsi atau kerja. Misalnyainstruksi pengubahan urusan eksekusi.

Page 32: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

32

Instruction Addess Calculation (IAC), yaitu mengkalkulasiatau menentukan alamat instruksi berikutnya yang akandieksekusi. Biasanya melibatkan penambahan bilangan tetap kealamat instruksi sebelumnya. Misalnya, bila panjang setiapinstruksi 16 bit padahal memori memiliki panjang 8 bit, makatambahkan 2 ke alamat sebelumnya.Instruction Fetch (IF), yaitu membaca atau pengambil instruksidari lokasi memorinya ke CPU.Instruction Operation Decoding (IOD), yaitu menganalisainstruksi untuk menentukan jenis operasi yang akan dibentukdan operand yang akan digunakan.Operand Address Calculation (OAC), yaitu menentukanalamat operand, hal ini dilakukan apabila melibatkan referensioperand pada memori.Operand Fetch (OF), adalah mengambil operand dari memoriatau dari modul I/O.Data Operation (DO), yaitu membentuk operasi yang diperintahkan dalam instruksi.Operand store (OS), yaitu menyimpan hasil eksekusi ke dalammemori

Page 33: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

33

Page 34: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

34

Fungsi interupsi adalah mekanismepenghentian atau pengalihan pengolahaninstruksi dalam CPU kepada routine interupsi. Tujuan interupsi secara umum untukmanajemen pengeksekusian routine instruksiagar efektif dan efisien antar CPU dan modulmodul I/O maupun memori. Setiap komponen komputer dapat menjalankantugasnya secara bersamaan, tetapi kendaliterletak pada CPU disamping itu kecepataneksekusi masing masing modul berbedasehingga dengan adanya fungsi interupsi inidapat sebagai sinkronisasi kerja antar modul

Page 35: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

35

Program, yaitu interupsi yang dibangkitkandengan beberapa kondisi yang terjadipada hasil eksekusi program. Contohnya: arimatika overflow, pembagian nol, oparasiilegal.Timer, adalah interupsi yang dibangkitkanpewaktuan dalam prosesor. Sinyal inimemungkinkan sistem operasimenjalankan fungsi tertentu secarareguler.

Page 36: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

36

I/O, sinyal interupsi yang dibangkitkan olehmodul I/O sehubungan pemberitahuankondisi error dan penyelesaian suatuoperasi.Hardware failure, adalah interupsi yang dibangkitkan oleh kegagalan daya ataukesalahan paritas memori.

Page 37: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

37

1. Prosesor menangguhkan eksekusiprogram yang dijalankan danmenyimpan konteksnya.Tindakan iniadalah menyimpan alamat instruksiberikutnya yang akan dieksekusidan data lain yang relevan.

2. Prosesor menyetel program counter (PC) ke alamat awal routine interrupt handler.

Page 38: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

38

Page 39: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

39

1. Menolak atau tidak mengizinkan interupsi lain saatsuatu interupsi ditangani prosesor. Kemudian setelahprosesor selesai menangani suatu interupsi makainterupsi lain baru di tangani.Disebut pengolahan interupsi berurutan / sekuensial. Pendekatan ini cukup baik dan sederhana karenainterupsi ditangani dalam ututan yang cukup ketat. Kelemahan tidak memperhitungkan prioritasinterupsi. Diperlihatkan pada gambar 3.6a.

2. Mendefinisikan prioritas bagi interupsi dan interrupt handler mengizinkan interupsi berprioritas lebih tinggiditangani terlebih dahulu. Disebut pengolahan interupsi bersarang, diperlihatkanpada gambar 3.6b.

Page 40: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

40

Page 41: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

41

Suatu sistem memiliki tiga perangkat I/O: printer, disk, dan saluran komunikasi, denganprioritas masing masing 2, 4 dan 5. Pada awal sistem melakukan pencetakandengan printer, saat itu terdapat pengirimandata pada saluran komunikasi sehinggamodul komunikasi meminta interupsi. Proses selanjutnya adalah pengalihaneksekusi interupsi mudul komunikasi, sedangkan interupsi printer ditangguhkan.

Page 42: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

42

Saat pengeksekusian modul komunikasiterjadi interupsi disk, namun karenaprioritasnya lebih rendah maka interupsi disk ditangguhkan. Setelah interupsi modul komunikasi selesaiakan dilanjutkan interupsi yang memilikiprioritas lebih tinggi, yaitu disk. Bila interupsi disk selesai dilanjutkaneksekusi interupsi printer.Selanjutnya dilanjutkan eksekusi program utama.

Page 43: Struktur& Fungsi CPU (I) - Littleradita's Blog | Just … MengertistrukturdanfungsiCPU yaitu dapatmelakukanfetch instruksi, interpreter instruksi, fetch data, eksekusi danmenyimpankembali

43