Pada tingkat paling atas, sebuah komputer terdiri dari Central Processing Unit (CPU), memori, dan komponen-komponen I/O, dengan satu atau lebih modul dari masing-masing jenisnya.
I. KOMPONEN-KOMPONEN KOMPUTER
Seluruh rancangan komputer saat ini secara virtual didasarkan pada konsep yang dikembangkan oleh John Van Neumann di Institute for advanced studies, Princeton. Rancangan seperti itu dikenal sebagai arsitektur Von Neumann dan didasarkan pada 3 konsep utama :
· Data dan intruksi-intruksi disimpan di memori baca-tulis tunggal.
· Muatan dari memori ini dapat diamati dengan lokasi, tanpa tergantung pada jenis data yang berada di dalamnya.
· Eksekusi terjadi dengan cara sekuensial (kecuali diubah secara eksplisit) dari instruksi yang satu ke instruksi yang berikutnya.
II. FUNGSI KOMPUTER
Fungsi dasar yang dibentuk oleh komputer adalah eksekusi program, yang terdiri dari sekumpulan instruksi yang disimpan di dalam memori. Prosesor mengerjakan pekerjaan yang nyata dengan eksekusi intruksi yang dispesifikasikan di dalam progaram. Dalam format paling sederhana, instruksi prosesornya terdiri dari dua langkah : prosesor baca instruksi (mengambil) dari memori satu demi satu dan mengeksekusi setiap instruksi. Eksekusi program terdiri dari proses pengulangan instruksi fetch dan eksekusi instruksi.
Instruksi Fetch dan Eksekusi
Pada awal setiap siklus instruksi, prosesor mengambil suatu intruksi dari memori. Pada prosesor yang umum, suatu register yang disebut Program Counter (PC) dipakai untuk mengawasi instruksi yang akan dibaca selanjutnya.
Instruksi yang dibaca akan dimasukkan ke dalam register di dalam prosesor yang dikenal sebagai Instruction Register (IR). Instruksi berisi bit yang menspesifikasikan tindakan yang akan diambil oleh prosesor. Prosesor menginterpretasikan instruksi dan melakukan tindakan yang diperlukan. Secara umum tindakan- tindakan ini dibagi menjadi 4 kategori :
· Prosesor-Memori : data dapat ditransfer dari prosesor ke memori atau dari memori ke prosesor.
· Prosesor-I/O : data dapat ditransfer ke atau dari suatu perangkat periferal dengan pemindahan antara prosesor dan modul I/O.
· Pengolahan data : prosesor dapat membentuk beberapa operasi aritmatik dan logika pada data.
· Kontrol : suatu instruksi dapat mengubah urutan eksekusi.
· Prosesor-Memori : data dapat ditransfer dari prosesor ke memori atau dari memori ke prosesor.
· Prosesor-I/O : data dapat ditransfer ke atau dari suatu perangkat periferal dengan pemindahan antara prosesor dan modul I/O.
· Pengolahan data : prosesor dapat membentuk beberapa operasi aritmatik dan logika pada data.
· Kontrol : suatu instruksi dapat mengubah urutan eksekusi.

Interupsi
Secara virtual semua komputer menyediakan mekanisme yang membuat modul-modul lainnya(I/O, memori) dapat menginterupsikan pengolahan normal prosesor. Interupsi disediakan terutama semata sebagai cara untuk meningkatkan efisiensi pengolahan.
Interupsi dan siklus instruksi, dengan memakai interupsi, prosesor dapat dipakai dalam mengeksekusi instruksi-instruksi lainnya operasi I/O sedang dilaksanakan. Dari sudut pandang program pengguna, suatu interupsi adalah suatu gangguan terhadap urutan eksekusi normal. Ketika pengolahan interupsi diselesaikan, maka eksekusi dilakukan lagi. Untuk mengakomodasi interupsi, sebah siklus interupsi ditambahkan ke siklus instruksi.
III. STRUKTUR INTERKONEKSI
Di dalam sebuah komputer terdiri dari sekumpulan komponen atau modul tiga jenis dasar (Prosesor, Memori, I/O) yang saling berkomunikasi satu dengan yang lain. Akibatnya, sebuah komputer merupakan suatu jaringan dari modul-modul dasar. Dengan begitu, harus terdapat lintasan untuk menghubungkan modul-modul. Kumpulan lintasan yang menghubungkan berbagai modul disebut struktur interkoneksi.
Struktur Interkoneksi harus mendukung jenis perpindahan sebagai berikut :
· Memori ke prosesor : prosesor membaca sebuah intruksi atau sebuah unit data dari memori.
· Prosesor ke memori : prosesor menuliskan sebuah unit data ke memori.
· I/O ke prosesor : prosesor membaca data dari perangkat I/O via sebuah modul I/O.

· Prosesor ke I/O : prosesor mengirimkan data ke perangkat I/O.
· I/O ke atau dari memori : bagi kedua kasus ini, sebuah modul I/O diizinkan untuk saling menggunakan Direct Memory Access (DMA).
Seiring dengan perkembangan jaman, banyak struktur interkoneksi telah tercipta. Saat ini yang umum digunakan adalah bus dan bermacam-macam struktur multiple-bus.
IV. INTERKONEKSI BUS
Bus adalah suatu lintasan komunikasi yang menghubungkan dua atau lebih perangkat. Karakteristik kunci suatu bus yakni bahwa bus merupakan suatu medium transmisi bersama. Berbagai perangkat dapat diterima oleh semua perangkat lain yang terhubung ke bus. Jika dua perangkat melakukan transmisi sepanjang periode waktu yang sama, sinyalnya akan tumpang tindih dan menjadi rusak. Sehingga hanya satu perangkat yang akan berhasil melakukan transmisi pada saat tertentu.
Biasanya suatu bus terdiri dari berbagai lintasan komunikasi atau saluran. Masing-masing saluran mampu mentransmisikan sinyal yang mewakili biner 0 dan biner 1. Dari waktu ke waktu suatu urutan digit biner dapat ditransmisikan melalui lintasan tunggal. Dengan mengumpulkannya beberapa lintasan bus dapat digunakan untuk mentransmisikan digit biner secara simultan (secara paralel).
Sistem komputer berisi sejumlah bus berbeda yang menyediakan lintasan antara komponen-kompomen pada berbagai level dari tingkatan sistem komputer. Sedangkan bus yang menghubungkan kompomen-komponen utama komputer (prosesor, memori, I/O) disebut suatu sistem bus. Struktur Bus
Suatu sistem bus biasanya bersi sekitar 50 sampai ratusan saluran yang terpisah. Masing-masing lintasan ditandai dengan arti dan fungsi. Saluran bus digolongkan dalam 3 golongan fungsional, yaitu : data, alamat, dan saluran kontrol. Sebagai tambahan terdapat saluran distribusi yang memberikan kebutuhan daya bagi modul yang terhubung.
Lebar bus data adalah faktor pokok dalam menentukan keseluruhan kinerja sistem. Sebagai contoh, jika bus data lebarnya 8 bit dan masing-masing intruksi panjangnya 16 bit, kemudian prosesor harus mengakses modul memori dua kali selama masing-masing siklus intruksinya.
Saluran-saluran alamat digunakan untuk menandakan sumber atau tujuan dari data pada bus data.
Saluran-saluran kontrol digunakan untuk mengontrol akses ke saluran alamat dan penggunaan saluran data dan saluran alamat. Karena data dan saluran alamat dipakai bersama oleh semua komponen, maka harus ada suatu alat untuk pengendalian penggunaannya. Sinyal-sinyal kontrol mentransmisikan baik perintah maupun pengaturan waktu informasi antara modul sistem. Saluran kontrol umumnya meliputi :
· Memori tulis : menyebabkan data pada bus akan ditulis ke dalam lokasi memori.
· Memori baca : menyebabkan data dari lokasialamat yang ditempatkan pada bus.
· I/O tulis : menyebabkan data pada bus menjadi output ke alamat port I/O.
· I/O baca : menyebabkan data dari port I/O yang beralamat ditempatkan pada bus.
· Transfer ACK : menunjukkan bahwa data telah diterima dari bus atau telah ditempatkan pada bus.
· Bus request : menunjukkan bahwa suatu modul kontrol bus.
· Bus grant : menunjukkan bahwa modul yang melakukan permintaan telah diberi hak kontrol bus.
· Interupsi request : menunjukkan bahwa suatu interupsi ditangguhkan.
· Interupsi ACK : memberitahukan bahwa interupsi yang ditangguhkan telah diketahui.
· Clock : yang digunakan untuk mensinkronkan operasi-operasi.
· Reset : menginisialisasi semua modul.
Secara fisik, sistem bus merupakan sejumlah konduktor listrik paralel. Dalam penyusunan bus klasik, konduktor-konduktor ini berupa saluran logam yang berakir pada kartu atau papan.
Hierarki Multiple Bus
Jika sebagian besar perangkat dihubungkan ke bus, maka akan terjadi penurunan kinerja. Ada dua penyebab utama, yaitu :
1. Secara umum, semakin banyak perangkat dihubungkan dengan bus, semakin besar panjang bus dan karenanya akan semakin besar delay propagasinya. Delay ini menentukan waktu yang diperlukan oleh perangkat untuk mengkoordinasikan penggunaan bus. Pada saat kontrol bus melintasi suatu perangkat lainnya, delay propagasi ini akan sangat mempengaruhi kinerja.
2. Bus mungkin mengalami kemacetan bagi yang lain karena semakin besarnya permintaan transfer data yang hampir mendekati kapasitas bus. Masalah ini dapat diatasi pada taraf tertentu dengan peningkatan kelajuan data sehingga bus dapat membawanya dengan penggunaan bus yang lebih luas (missal meningkatkan bus data dari 32 menjadi 64 bit). Namun karena kelajuan data yang dihasilkan oleh perangkat yang terhubung (misal pengontrol grafik dan video, antarmuka jaringan) tumbuh dengan cepat, maka dalam perlombaan ini besar kemungkinan bus tunggal akan menderita kekalahan.
Sangat dimungkinkan untuk menghubungkan pengontrol I/O secara langsung ke bus sistem. Penyelesaian yang lebih efisien akan menggunakan satu atau lebih bus perluasan untuk tujuan ini.
Arsitektur bus tradisional cukup efisien tetapi mulai mengalami penurunan dengan semakin tingginya kinerja pada perangkat I/O. Sebagai tanggapan terhadap peningkatan kebutuhan ini, suatu pendekatan umum diambil oleh industri adalah dengan membangun bus berkecepatan tinggi yang terintegrasi secara melekat dengan sisa sistem yang hanya untuk keperluan penghubung antara bus prosesor dan bus dengan kecepatan tinggi. Pengaturan ini kadang-kadang disebut sebagai arsitektur mezzanine.
Elemen-elemen Rancangan Bus
Jenis Bus
Saluran-saluran bus dapat dipisahkan ke dalam 2 jenis umum : dedicated dan multiplex. Suatu saluran bus dedicated secara permanen diberi sebuah fungsi atau subset fisik komponen-komponen komputer. Sedangakan keuntungan dari time multiplexing adalah penggunaan saluran yang lebih sedikit yang menghemat ruang dan biaya. Kerugiannya adalah rangkaian lebih rumit dan diperlukan di dalam setiap modul.
Metode Arbitrasi
Berbagai macam metode secara saluran besar dapat digolongkan sebagai metode terpusat atau metode terdistribusi. Pada metode terpusat, perangkat-perangkat keras tunggal yang dikenal sebagai pengontrol bus atau arbiter, bertanggung jawab untuk mengalokasikan waktu pada bus. Perangkat mungkin bersaluran sebuah modul atau bagian dari prosesor yang terpisah. Pada metode terdistribusi, tidak ada kontrol pusat. Melainkan masing-masing modul berisi akses pengontrol logika dan modul-modul bekrja bersama-sama untuk memakai bus bersama-sama. Dengan kedua metode arbiter, tujuannya adalah untuk menugaskan suatu perangkat, baik prosesor maupun modul I/O, bertindak sebagai master
Pewaktuan
Pewaktuan berkaitan dengan cara yang ditempuh oleh peristiwa yang dikoordinasikan pada bus. Bus menggunakan salah satu dari pewaktuan sinkron maupun pewaktuan tidak sinkron.
Lebar Bus
Lebar bus data mempunyai dampak pada kinerja sistem, yaitu semakin lebar bus data, semakin besar bit yang dapat ditransferkan pada suatu waktu. Lebar bus alamat mempunyai dampak pada kapasitas sistem, yakni semakin lebar bus alamat, semakin besar cakupan lokasi yang dapat direferensi.
Jenis Transfer Data
Transfer data yang menggunakan bus di antaranya adalah :
1. Operasi Read
2. Operasi Write
3. Operasi Read Modify Write
4. Operasi Read After Write
5. Operasi Block
V. PENJELASAN CONTOH EKSEKUSI PROGRAM

Gambar diatas memperlihatkan contoh siklus eksekusi sebuah instruksi yang terdiri dari 6 tahap, yaitu :
1. Karena PC (Program Counter) berisi angka 300, maka instruksi yang akan diambil adalah instruksi yang terletak di memori alamat 300, yaitu instruksi dengan kode 1940. Instruksi tersebut diambil dari memori kemudian disimpan di register instruksi (Instruction Register).
2. Misalkan kode 1940 merupakan instruksi dengan kode operasi (Operation Code, opcode) 1, diikuti dengan 940 yang merupakan alamat operand. Opcode 1 berarti instruksi untuk mengcopy data dari alamat operand (dalam hal ini 940) ke akumulator. Maka data yang terletak di alamat 940 dicopy ke accumulator untuk diproses dalam siklus eksekusi ini.
3. Setelah itu isi PC ditambah satu (incremented) sehingga isinya menjadi 301. Artinya, instruksi berikutnya yang harus diambil dari memori dan dieksekusi terletak di memori alamat 301, yaitu instruksi dengan kode 5941. Instruksi tersebut mengandung opcode 5 dan alamat operand 941.
4. Karena 5 berarti penjumlahan antara isi akumulator dengan isi memori yang alamatnya diberikan di sebelah angka 5, maka isi akumulator dijumlahkan dengan isi memori alamat 941. Kemudian hasil penjumlahannya dikembalikan ke akumulator.
5. Setelah PC ditambah satu, maka isinya menjadi 302, sehingga instruksi berikutnya yang diambil dari memori adalah 2941, yaitu opcode 2 dan operand 941.
6. Arti 2941 adalah perintah untuk mengcopy isi akumulator ke memori alamat 941.
Sekian pembahasan singkat dari saya, semoga bermanfaat.
See you in the next post :)
Selamat Malam..
Wassalamu'alaikum..
Referensi:
1. Organisasi & Arsitektur Komputer (Edisi Keenam) William Stallings.
2. https://sonysugiarto.wordpress.com/2013/12/31/jenis-bus-dan-hubungan-dalam-proses-read-dan-write-serta-cara-kerja-alu-didalam-komputer/
3. http://muhammadwafi12.blogspot.co.id/2014/10/sistem-komputer-dan-eksekusi-instruksi.html
Hierarki Multiple Bus
Jika sebagian besar perangkat dihubungkan ke bus, maka akan terjadi penurunan kinerja. Ada dua penyebab utama, yaitu :
1. Secara umum, semakin banyak perangkat dihubungkan dengan bus, semakin besar panjang bus dan karenanya akan semakin besar delay propagasinya. Delay ini menentukan waktu yang diperlukan oleh perangkat untuk mengkoordinasikan penggunaan bus. Pada saat kontrol bus melintasi suatu perangkat lainnya, delay propagasi ini akan sangat mempengaruhi kinerja.
2. Bus mungkin mengalami kemacetan bagi yang lain karena semakin besarnya permintaan transfer data yang hampir mendekati kapasitas bus. Masalah ini dapat diatasi pada taraf tertentu dengan peningkatan kelajuan data sehingga bus dapat membawanya dengan penggunaan bus yang lebih luas (missal meningkatkan bus data dari 32 menjadi 64 bit). Namun karena kelajuan data yang dihasilkan oleh perangkat yang terhubung (misal pengontrol grafik dan video, antarmuka jaringan) tumbuh dengan cepat, maka dalam perlombaan ini besar kemungkinan bus tunggal akan menderita kekalahan.
Sangat dimungkinkan untuk menghubungkan pengontrol I/O secara langsung ke bus sistem. Penyelesaian yang lebih efisien akan menggunakan satu atau lebih bus perluasan untuk tujuan ini.
Arsitektur bus tradisional cukup efisien tetapi mulai mengalami penurunan dengan semakin tingginya kinerja pada perangkat I/O. Sebagai tanggapan terhadap peningkatan kebutuhan ini, suatu pendekatan umum diambil oleh industri adalah dengan membangun bus berkecepatan tinggi yang terintegrasi secara melekat dengan sisa sistem yang hanya untuk keperluan penghubung antara bus prosesor dan bus dengan kecepatan tinggi. Pengaturan ini kadang-kadang disebut sebagai arsitektur mezzanine.
Elemen-elemen Rancangan Bus
§
Jenis
Dedicate Multiplexed Metode Arbitrasi Tersentralisasi Terdistribusi Pewatuan Sinkron Tidak Sinkron |
Saluran-saluran bus dapat dipisahkan ke dalam 2 jenis umum : dedicated dan multiplex. Suatu saluran bus dedicated secara permanen diberi sebuah fungsi atau subset fisik komponen-komponen komputer. Sedangakan keuntungan dari time multiplexing adalah penggunaan saluran yang lebih sedikit yang menghemat ruang dan biaya. Kerugiannya adalah rangkaian lebih rumit dan diperlukan di dalam setiap modul.
Metode Arbitrasi
Berbagai macam metode secara saluran besar dapat digolongkan sebagai metode terpusat atau metode terdistribusi. Pada metode terpusat, perangkat-perangkat keras tunggal yang dikenal sebagai pengontrol bus atau arbiter, bertanggung jawab untuk mengalokasikan waktu pada bus. Perangkat mungkin bersaluran sebuah modul atau bagian dari prosesor yang terpisah. Pada metode terdistribusi, tidak ada kontrol pusat. Melainkan masing-masing modul berisi akses pengontrol logika dan modul-modul bekrja bersama-sama untuk memakai bus bersama-sama. Dengan kedua metode arbiter, tujuannya adalah untuk menugaskan suatu perangkat, baik prosesor maupun modul I/O, bertindak sebagai master
Pewaktuan
Pewaktuan berkaitan dengan cara yang ditempuh oleh peristiwa yang dikoordinasikan pada bus. Bus menggunakan salah satu dari pewaktuan sinkron maupun pewaktuan tidak sinkron.
Lebar Bus
Lebar bus data mempunyai dampak pada kinerja sistem, yaitu semakin lebar bus data, semakin besar bit yang dapat ditransferkan pada suatu waktu. Lebar bus alamat mempunyai dampak pada kapasitas sistem, yakni semakin lebar bus alamat, semakin besar cakupan lokasi yang dapat direferensi.
Jenis Transfer Data
Transfer data yang menggunakan bus di antaranya adalah :
1. Operasi Read
2. Operasi Write
3. Operasi Read Modify Write
4. Operasi Read After Write
5. Operasi Block
V. PENJELASAN CONTOH EKSEKUSI PROGRAM

Gambar diatas memperlihatkan contoh siklus eksekusi sebuah instruksi yang terdiri dari 6 tahap, yaitu :
1. Karena PC (Program Counter) berisi angka 300, maka instruksi yang akan diambil adalah instruksi yang terletak di memori alamat 300, yaitu instruksi dengan kode 1940. Instruksi tersebut diambil dari memori kemudian disimpan di register instruksi (Instruction Register).
2. Misalkan kode 1940 merupakan instruksi dengan kode operasi (Operation Code, opcode) 1, diikuti dengan 940 yang merupakan alamat operand. Opcode 1 berarti instruksi untuk mengcopy data dari alamat operand (dalam hal ini 940) ke akumulator. Maka data yang terletak di alamat 940 dicopy ke accumulator untuk diproses dalam siklus eksekusi ini.
3. Setelah itu isi PC ditambah satu (incremented) sehingga isinya menjadi 301. Artinya, instruksi berikutnya yang harus diambil dari memori dan dieksekusi terletak di memori alamat 301, yaitu instruksi dengan kode 5941. Instruksi tersebut mengandung opcode 5 dan alamat operand 941.
4. Karena 5 berarti penjumlahan antara isi akumulator dengan isi memori yang alamatnya diberikan di sebelah angka 5, maka isi akumulator dijumlahkan dengan isi memori alamat 941. Kemudian hasil penjumlahannya dikembalikan ke akumulator.
5. Setelah PC ditambah satu, maka isinya menjadi 302, sehingga instruksi berikutnya yang diambil dari memori adalah 2941, yaitu opcode 2 dan operand 941.
6. Arti 2941 adalah perintah untuk mengcopy isi akumulator ke memori alamat 941.
Sekian pembahasan singkat dari saya, semoga bermanfaat.
See you in the next post :)
Selamat Malam..
Wassalamu'alaikum..
Referensi:
1. Organisasi & Arsitektur Komputer (Edisi Keenam) William Stallings.
2. https://sonysugiarto.wordpress.com/2013/12/31/jenis-bus-dan-hubungan-dalam-proses-read-dan-write-serta-cara-kerja-alu-didalam-komputer/
3. http://muhammadwafi12.blogspot.co.id/2014/10/sistem-komputer-dan-eksekusi-instruksi.html