Skema Dasar Sistem Komputer
Substansi
- Komponen Sistem Komputer
- Pemroses
- Memori
- Perangkat Masukan / Keluaran
- Interkoneksi Antar Komponen (BUS)
- Eksekusi Instruksi
- Mode Eksekusi Instruksi
Blok Sistem Komputer
1. Komponen Sistem Komputer
a. Pemroses (processor)
Berfungsi mengendalikan operasi komputer & melakukan fungsi pemrosesan data.
b. Memori utama
Berfungsi menyimpan data & program
Biasanya volatile : tidak dapat mempertahankan data & program yang disimpan bila sumber daya energi (listrik) dihentikan.
c. Perangkat masukan dan keluaran
Berfungsi memindahkan data antara komputer & lingkungan eksternal yaitu : perangkat penyimpan sekunder, perangkat komunikasi, terminal, dsb
d. Interkoneksi antarkomponen (bus)
Adalah struktur & mekanisme untuk menghubungkan pemroses, memori utama, & perangkat masukan/keluaran.
2. Pemrosesan
Berfungsi mengendalikan operasi komputer & melakukan fungsi pemrosesan data. Langkah-langkah yang dilakukan pemroses:
- mengambil instruksi yang dikodekan secara biner dari memori utama
- mendekode instruksi menjadi aksi-aksi sederhana
- melaksanakan aksi – aksi
Operasi-operasi di komputer dapat dikategorikan menjadi 3 tipe, yaitu:
- Operasi aritmatika : +,-,*, dsb
- Operasi logika : OR, AND, XOR, inversi, dsb
- Operasi pengendalian : percabangan, lompat, dsb
Pemroses terdiri dari:
- CU (Control Unit) : berfungsi mengendalikan operasi yang dilaksanakan sistem komputer.
- ALU (Aritmetic Logic Unit) : untuk komputasi yaitu melakukan operasi aritmatika & logika
- Register-register : berfungsi sebagai memori sangat cepat yang biasanya sebagai tempat operan-operan dari operasi yang akan dilakukan.
Skema Blok Pemrosesan
Register dapat dikategorikan menjadi 2:
1. Register yg terlihat pemakai (pemrogram)
Pemrogram dapat memeriksa isi dari register-register tipe ini. Beberapa instruksi disediakan untuk mengisi (memodifikasi) register tipe ini. Terdiri dari 2 jenis :
a. Register Data, menyimpan suatu nilai untuk beragam keperluan:
- General purpose register, Digunakan untuk beraneka ragam keperluan pada suatu instruksi mesin yang melakukan suatu operasi terhadap data.
- Special purpose register, Digunakan untuk menampung operasi floating point, menampung limpahan operasi penjumlahan atau perkalian.
b. Register Alamat, berisi alamat data di memori utama, alamat instruksi di memori utama,bagian alamat yang digunakan dalam penghitungan alamat lengkap:
- Register Indeks (index register), Pengalamatan berindeks merupakan salah satu mode pengalamatan popular. Pengalamatan melibatkan penambahan indeks ke nilai dasar untuk memperoleh alamat efektif
- Register penunjuk segmen (segment pointer register), Pada pengalamatan bersegmen, memori dibagi menjadi segmen-segmen. Segmen berisi satu blok memori yang panjangnya dapat bervariasi.Untuk mengacu memori bersegmen digunakan pengacuan terhadap segmen dan offset di segmen itu. Register penunjuk segmen mencatat alamat dasar (lokasi awal) dari segmen. Mode pengalamatan bersegmen sangat penting dalam manajemen memori.
- Register penunjuk stack (stack pointer register), Instruksi yang tak memerlukan alamat karena alamat operan ditunjuk register penunjuk stack. Operasi-operasi terhadap stack:
> instruksi push : menyimpan data pada stack, dengan meletakkan data di puncak stack
> instruksi pop : mengambil data dari puncak stack.
- Register penanda (flag register), Isi register merupakan hasil operasi dari pemroses. Register berisi kondisi-kondisi yang dihasilkan pemroses berkaitan dengan operasi yang baru saja dilaksanakan. Register ini terlihat oleh pemakai tapi hanya dapat diperbaharui oleh pemroses sebagai dampak (efek) operasi yang dijalankannya.
2. Register untuk kendali & status
Digunakan untuk mengendalikan operasi pemroses, kebanyakan tidak terlihat oleh pemakai. Sebagian dapat diakses dengan instruksi mesin yang dieksekusi dalam mode kontrol atau kernel sistem operasi.
a. Register untuk alamat dan buffer, terdiri dari:
- MAR (Memory Address Register), untuk mencatat alamat memori yang akan diakses (baik yang akan ditulisi maupun dibaca)
- MBR (Memory Buffer Register), untuk menampung data yang akan ditulis ke memori yang alamatnya ditunjuk MAR atau untuk menampung data dari memori (yang alamatnya ditunjuk oleh MAR) yang akan dibaca.
- I/O AR (I/O Address Register), untuk mencatat alamat port I/O yang akan diakses(baik akan ditulisi / dibaca).
- I/O BR (I/O Buffer Register), untuk menampung data yang akan dituliskan ke port yang alamatnya ditunjuk I/O AR atau untuk menampung data dari port (yang alamatnya ditunjuk oleh I/O AR) yang akan dibaca.
b. Register untuk eksekusi instruksi
- PC (Program Counter), mencatat alamat memori dimana instruksi di dalamnya akan dieksekusi
- IR (Instruction Register), menampung instruksi yang akan dilaksanakan
c. Register untuk informasi status
Register ini berupa satu register / kumpulan register. Kumpulan register ini disebut PSW (Program Status Word). PSW berisi kode-kode kondisi pemroses ditambah informasi-informasi status lain, yaitu :
- Sign, Flag ini mencatat tanda yang dihasilkan operasi yang sebelumnya dijalankan
- Zero, Flag ini mencatat apakah operasi sebelumnya menghasilkan nilai nol
- Carry, Flag ini mencatat apakah dihasilkan carry (kondisi dimana operasi penjumlahan/ perkalian menghasilkan bawaan yang tidak dapat ditampung register akumulator)
- Equal, Flag ini mencatat apakah operasi menghasilkan kondisi sama dengan
- Interupt enable/disable, Flag ini mencatat apakah interrupt sedang dapat diaktifkan atau tidak
- Supervisor, Flag ini mencatat mode eksekusi yang dilaksanakan, yaitu mode supervisor atau bukan. Pada mode supervisor maka seluruh instruksi dapat dilaksanakan sedang untuk mode bukan mode supervisor(mode user) maka beberapa instruksi kritis tidak dapat diaktifkan.
3. Memori
Memori berfungsi untuk menyimpan data dan program. Hirarki memori berdasarkan kecepatan akses:
Hirarki Memori Berdasarkan Kecepatan Akses
- Harga : semakin ke bawah, harga semakin murah, harga dihitung dari rasio rupiah per bit data disimpan
- Kapasitas : semakin ke bawah, kapasitas makin terbatas
- Kecepatan akses : semakin ke bawah, semakin lambat
- Frekuensi pengaksesan : semakin ke bawah, semakin rendah frekuensi pengaksesan
Setiap kali pemroses melakukan eksekusi, pemroses harus membaca instruksi dari memori utama. Agar eksekusi dilakukan secara cepat maka harus diusahakan instruksi tersedia di memori pada lapisan berkecepatan akses lebih tinggi. Kecepatan eksekusi ini akan meningkatkan kinerja sistem. Konsep ini diimplementasikan antara lain berupa :
Chace memory
Merupakan memori berkapasitas terbatas, berkecepatan tinggi yang lebih mahal dibanding memori utama. Chace memory adalah di antara memori utama dan register pemroses yang berfungsi agar pemroses tidak langsung mengacu memori utama tetapi di chace memory yang kecepatan akses lebih tinggi. Metode ini akan meningkatkan kinerja sistem.
Buffering
Bagian memori utama untuk menampung data yang akan ditransfer dari / ke perangkat masukan / keluaran dan penyimpan sekunder. Buffering dapat mengurangi frekuensi pengaksesan dari/ke perangkat masukan/keluaran dan penyimpan sekunder sehingga meningkatkan kinerja sistem.
4. Perangkat Masukan / Keluaran
Perangkat masukan/keluaran terdiri dari 2 bagian:
- Komponen mekanis : perangkat itu sendiri
- Komponen elektronis : pengendali perangkat berupa chip controller
Perangkat adalah perangkat nyata yang dikendalikan chip controller di board system atau card. Controller dihubungkan dengan pemroses dan komponen-komponen lain lewat bus. Controller berbeda-beda, tapi biasanya mempunyai register-register untuk mengendalikannya.
5. Interkoneksi Antar Komponen (BUS)
Bus terdiri dari 3 macam:
1. Bus alamat (address bus)
CPU mengirim alamat lokasi memori atau port yang ingin ditulis atau dibaca di bus alamat.
2. Bus data (data bus)
CPU dapat membaca & mengirim data dari/ke memori atau port. Banyak perangkat pada sistem yang dicantolkan ke bus data tapi hanya satu perangkat pada satu saat yang dapat memakainya.
3. Bus kendali (control bus)
CPU mengirim sinyal-sinyal pada bus kendali untuk memerintahkan memori atau port. Sinyal bus kendali antara lain:
- memory read : memerintahkan baca memori
- memory write : memerintahkan penulisan memori
- I/O read : memerintahkan baca port I/O
- I/O write : memerintahkan melakukan penulisan memori
Contoh mekanisme pembacaan
Untuk membaca data suatu lokasi memori, CPU mengirim alamat memori yang dikehendaki melalui bus alamat kemudian mengirim sinyal memory read pada bus kendali. Sinyal memory read memerintahkan ke perangkat memori untuk mengeluarkan data pada lokasi tersebut ke bus data agar dibaca CPU.
6. Eksekusi Instruksi
Tahap pemrosesan instruksi:
- Pemroses membaca instruksi dari memori (fetch)
- Pemroses mengeksekusi instruksi (execute)
Eksekusi program berisi pengulangan fetch dan execute. Pemrosesan 1 instruksi disebut satu siklus instruksi. Siklus eksekusi instruksi:
7. Mode Eksekusi Instruksi
1. Mode pemakai (user mode)
Mode dengan kewenangan rendah, program pemakai (aplikasi) biasa dieksekusi dalam mode ini.
2. Mode sistem (system mode)
Mode dengan kewenangan tinggi. Biasanya rutin sistem atau kendali atau kernel dieksekusi dengan mode ini.
Komentar
Posting Komentar