Senin, 29 September 2014

Perbandingan CISC & RISC

Cara sederhana untuk melihat kelebihan dan kelemahan dari arsitektur RISC (Reduced Instruction Set Computers) adalah dengan langsung membandingkannya dengan arsitektur pendahulunya yaitu CISC (Complex Instruction Set Computers).

Perkalian Dua Bilangan dalam Memori

Pada bagian kiri terlihat sebuah struktur memori (yang disederhanakan) suatu komputer secara umum. Memori tersebut terbagi menjadi beberapa lokasi yang diberi nomor 1 (baris): 1 (kolom) hingga 6:4. Unit eksekusi bertanggung-jawab untuk semua operasi komputasi. Namun, unit eksekusi hanya beroperasi untuk data-data yang sudah disimpan ke dalam salah satu dari 6 register (A, B, C, D, E atau F). Misalnya, kita akan melakukan perkalian (product) dua angka, satu disimpan di lokasi 2:3 sedangkan lainnya di lokasi 5:2, kemudian hasil perkalian tersebut dikembalikan lagi ke lokasi 2:3.

Pendekatan CISC
             Tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan, instruksi akan membaca dua nilai dan menyimpannya ke 2 register yag berbeda, melakukan perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register yang benar. Jadi instruksi-nya cukup satu saja.
MULT 2:3, 5:2
MULT dalam hal ini lebih dikenal sebagai “complex instruction”, atau instruksi yang kompleks. Bekerja secara langsung melalui memori komputer dan tidak memerlukan instruksi lain seperti fungsi baca maupun menyimpan.
Satu kelebihan dari sistem ini adalah kompailer hanya menerjemahkan instruksi-instruksi bahasa tingkat-tinggi ke dalam sebuah bahasa mesin. Karena panjang kode instruksi relatif pendek, hanya sedikit saja dari RAM yang digunakan untuk menyimpan instruksi-instruksi tersebut.

Pendekatan RISC
       Prosesor RISC hanya menggunakan instruksi-instruksi sederhana yang bisa dieksekusi dalam satu siklus. Dengan demikian, instruksi ‘MULT’ sebagaimana dijelaskan sebelumnya dibagi menjadi tiga instruksi yang berbeda, yaitu “LOAD”, yang digunakan untuk memindahkan data dari memori ke dalam register, “PROD”, yang digunakan untuk melakukan operasi produk (perkalian) dua operan yang berada di dalam register (bukan yang ada di memori) dan “STORE”, yang digunakan untuk memindahkan data dari register kembali ke memori. Berikut ini adalah urutan instruksi yang harus dieksekusi agar yang terjadi sama dengan instruksi “MULT” pada prosesor RISC (dalam 4 baris bahasa mesin):
LOAD-A,2:3
LOAD-B,5:2
PROD-A,B
STORE 2:3, A
         Awalnya memang kelihatan gak efisien iya khan? Hal ini dikarenakan semakin banyak baris instruksi, semakin banyak lokasi RAM yang dibutuhkan untuk menyimpan instruksi-instruksi tersebut. Kompailer juga harus melakukan konversi dari bahasa tingkat tinggi ke bentuk kode instruksi 4 baris tersebut.

CISC
RISC
Penekanan pada
perangkat keras
Penekanan pada
perangkat lunak
Termasuk instruksi
kompleks multi-clock
Single-clock, hanya
sejumlah kecil instruksi
Memori-ke-memori:
“LOAD” dan “STORE”
saling bekerjasama
Register ke register:
“LOAD” dan “STORE”
adalah instruksi2 terpisah
Ukuran kode kecil,
kecepatan rendah
Ukuran kode besar,
kecepatan (relatif) tinggi
Transistor digunakan untuk
menyimpan instruksi2
kompleks
Transistor banyak dipakai
untuk register memori















           Bagaimanapun juga, strategi pada RISC memberikan beberapa kelebihan. Karena masing-masing instruksi hanya membuthukan satu siklus detak untuk eksekusi, maka seluruh program (yang sudah dijelaskan sebelumnya) dapat dikerjakan setara dengan kecepatan dari eksekusi instruksi “MULT”. Secara perangkat keras, prosesor RISC tidak terlalu banyak membutuhkan transistor dibandingkan dengan CISC, sehingga menyisakan ruangan untuk register-register serbaguna (general purpose registers). Selain itu, karena semua instruksi dikerjakan dalam waktu yang sama (yaitu satu detak), maka dimungkinkan untuk melakukan pipelining.

Memisahkan instruksi “LOAD” dan “STORE” sesungguhnya mengurangi kerja yang harus dilakukan oleh prosesor. Pada CISC, setelah instruksi “MULT” dieksekusi, prosesor akan secara otomatis menghapus isi register, jika ada operan yang dibutuhkan lagi untuk operasi berikutnya, maka prosesor harus menyimpan-ulang data tersebut dari memori ke register. Sedangkan pada RISC, operan tetap berada dalam register hingga ada data lain yang disimpan ke dalam register yang bersangkutan.

Persamaan Unjuk-kerja (Performance)
Persamaan berikut biasa digunakan sebagai ukuran unjuk-kerja suatu komputer:
      Pendekatan CISC bertujuan untuk meminimalkan jumlah instruksi per program, dengan cara mengorbankan kecepatan eksekusi sekian silus/detik. Sedangkan RISC bertolak belakang, tujuannya mengurangi jumlah siklus/detik setiap instruksi dibayar dengan bertambahnya jumlah instruksi per program.

Penghadang jalan (Roadblocks) RISC
     Walaupun pemrosesan berbasis RISC memiliki beberapa kelebihan, dibutuhkan waktu kurang lebih 10 tahunan mendapatkan kedudukan di dunia komersil. Hal ini dikarenakan kurangnya dukungan perangkat lunak.
     Walaupun Apple’s Power Macintosh menggunakan chip berbasis RISC dan Windows NT adalah kompatibel RISC, Windows 3.1 dan Windows 95 dirancang berdasarkan prosesor CISC. Banyak perusahaan segan untuk masuk ke dalam dunia teknologi RISC. Tanpa adanya ketertarikan komersil, pengembang prosesor RISC tidak akan mampu memproduksi chip RISC dalam jumlah besar sedemikian hingga harganya bisa kompetitif.
      Kemerosotan juga disebabkan munculnya Intel, walaupun chip-chip CISC mereka semakin susah digunakan dan sulit dikembangkan, Intel memiliki sumberdaya untuk menjajagi dan melakukan berbagai macam pengembangan dan produksi prosesor-prosesor yang ampuh. Walaupun prosesor RISC lebih unggul dibanding Intel dalam beberapa area, perbedaan tersebut kurang kuat untuk mempengaruhi pembeli agar merubah teknologi yang digunakan.

Keunggulan RISC
     Saat ini, hanya Intel x86 satu-satunya chip yang bertahan menggunakan arsitektur CISC. Hal ini terkait dengan adanya kemajuan teknologi komputer pada sektor lain. Harga RAM turun secara dramatis. Pada tahun 1977, DRAM ukuran 1MB berharga %5,000, sedangkan pada tahun 1994 harganya menjadi sekitar $6. Teknologi kompailer juga semakin canggih, dengan demikian RISC yang menggunakan RAM dan perkembangan perangkat lunak menjadi semakin banyak ditemukan.


sumber: http://agfi.staff.ugm.ac.id/blog/index.php/2008/12/risc-vs-cisc/

ARSITEKTUR KOMPUTER HARVARD

Arsitektur Harvard memiliki dua memori yang terpisah satu untuk program (ROM) dan satu untuk data (RAM), yang mana arsitektur ini merupkan kebalikkan dari arsitektur komputer model von nuemann, jika von neuman mengabungkan ROM dan RAM menjadi satu maka arsitektur harvard maka kedua memori tersebut dipisahkan.

Diagram Arsitektur Komputer Model Harvard
Gambar

Kelebihan Arsitektur Komputer Model Harvard
a. bandwidth program tidak mesti sama dengan bandwidth  data
b. opcode dan operand dapat dijadikan dalam satu word instruksi saja
c. instruksi dapat dilakukan dengan lebih singkat dan cepat
d. memori program dan data yang terpisah,  maka kavling total memori program dan data dapat menjadi lebih banyak.

Kekurangan Arsitektur Komputer Model Harvard
a. arsitektur Harvard tidak memungkinkan untuk menempatkan data pada ROM.
b. arsitektur in tidak memungkinkan untuk mengakses data yang ada di ROM

sumber: http://zaenalnursalam.wordpress.com/2012/11/05/arsitektur-komputer-model-harvard/

ARSITEKTUR KOMPUTER VON NEUMANN

Arsitektur von Neumann (Mesin Von Neumann) adalah arsitektur yang diciptakan oleh John von Neumann (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini. Dengan unit sederhana ini, sebuah software yang rumit, seperti software pengolah kata Dapat dibuat. Arsitektur Von Neumann menyediakan fitur penyimpanan dan modifikasi program secara mudah.


Mesin von Neumann mempunyai program dan data daerah memory yang sama. Model ini membutuhkan berbagai pengumpulan program dan data untuk membentuk instruksi. Pengumpulan program dan data diselesaikan menggunakan time division multiplexing yang akan berpengaruh pada performa mikrokontroler itu sendiri.

Diagram Arsitektur von Neumann




Cara Kerja Von Neumann Nomor ( 1 – 2 )
Ada dua unit operasi dasar dalam mesin ini : ALU dan I/O,
• ALU melakukan inti operasi : perkalian, penjumalahan, pengurangan, dll.
• Unit I/O menangani aliran data eksternal.

Kunci utama arsitektur von Neumann adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal. Adapun cara kerja model Von Neumann, yaitu :
-   Main memory menyimpan data dan program
-   BUS mentransfer data, alamat dan mengontrol signal. Baik itu dari atau ke memory maupun dari atau ke perangkat lainnya.
-   CPU
-   Control Unit menangkap intruksi dan mengeksekusinya.
-   ALU (Arithmetic Logic Unit) melakukan operasi (menambah, mengurangi, dll)
-   Register 9Fast Memory) menyimpan hasil sementara dan informasi kontrol (alamat instruksi berikutnya).
-   Perangkat I/O menjadi tepat penghubung antara user dan komputer.

Cara Kerja Von Neumann Nomor ( 3 )
Cara kerjanya adalah satu CPU mengeksekusi instruksi satu persatu dan menjemput atau menyimpan data satu persatu. Adapun karakteristik model SIMD ini :
    - Mendistribusi proses ke sejumlah besar hardware.
    - Beroperasi terhadap berbagai elemen data yang berbeda
    - Melaksanakan komputasi yang sama terhadap semua elemen data

Kelebihan & Kekurangan Model Von Neumann

Kelebihan Von Neumann adalah pada fleksibilitas pengalamatan program dan data. Biasanya program selalu ada di (ROM=Read Only Memory ) dan data selalu ada di (RAM=Random Access Memory). Arsitektur Von Neumann memungkinkan prosesor untuk menjalankan program yang ada didalam memori data (RAM). Misalnya pada saat power on, dibuat program inisialisasi yang mengisi byte di dalam RAM. Data di dalam RAM ini pada gilirannya nanti akan dijalankan sebagai program. Sebaliknya data juga dapat disimpan di dalam memori program (ROM).

Kekurangan Arsitektur Von Neumann adalah bus tunggalnya itu sendiri. Sehingga instruksi untuk mengakses program dan data harus dijalankan secara sekuensial dan tidak bisa dilakukan overlaping untuk menjalankan dua isntruksi yang berurutan. Selain itu bandwidth program harus sama dengan banwitdh data. Jika memori data adalah 8 bits maka program juga harus 8 bits. Satu instruksi biasanya terdiri dari opcode (instruksinya sendiri) dan diikuti dengan operand (alamat atau data). Karena memori program terbatas hanya 8 bits, maka instruksi yang panjang harus dilakukan dengan 2 atau 3 bytes. Misalnya byte pertama adalah opcode dan byte berikutnya adalah operand. Secara umum prosesor Von Neumann membutuhkan jumlah clock CPI (Clock per Instruction) yang relatif lebih banyak dan walhasil eksekusi instruksi dapat menjadi relatif lebih lama.

sumber: sopyanaulia.wordpress.com/von-neuman/

Senin, 22 September 2014

CONTROL UNIT


         Unit kontrol (bahasa Inggris: Control Unit - CU) adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan / kendali / kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut.Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut.Pada awal-awal desain komputer, CU diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Beberapa word dari microprogram dipilih oleh microsequencer dan bit yang datang dari word-word tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya (supervisor).

Tugas dari CU adalah sebagai berikut:
1.      Mengatur dan mengendalikan alat-alat input dan output.
2.      Mengambil instruksi-instruksi dari memori utama.
3.      Mengambil data dari memori utama kalau diperlukan oleh proses.
4.      Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan    logika serta mengawasi kerja.

5.      Menyimpan hasil proses ke memori utama.

Proses tiga langkah karakteristik unit control:
1.      Menentukan elemen dasar prosesor
2.      Menjelaskan operasi mikro yang akan dilakukan prosesor
3.      Menentukan fungsi-fungsi yang harus dilakukan unit control agar menyebabkan pembentukan operasi mikro

     Masukan-masukan unit control:
1.    Clock / pewaktu
pewaktu adalah cara unit control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro (atau sejumlah operasi mikro yang bersamaan) dibentuk bagi setiap pulsa waktu. Pulsa ini dikenal sebagai waktu siklus prosesor.
2.    Register instruksi
opcode instruksi saat itu digunakan untuk menentukan operasi mikro mana yang akan dilakukan selama siklus eksekusi.
3.    Flag
flag ini diperlukan oleh unit control untuk menentukan status prosesor dan hasil operasi ALU sebelumnya.
4.    Sinyal control untuk mengontrol bus
Bagian bus control bus system memberikan sinyal-sinyal ke unit control, seperti sinyal-sinyal interupsi dan acknowledgement.

Keluaran-keluaran unit control:
1.      Sinyal control didalam prosesor: terdiri dari dua macam: sinyal-sinyal yang menyebabkan data dipindahkan dari register yang satu keregister yang lainnya, dan sinyal-sinyal yang dapat mengaktifasi fungsi-fungsi ALU tertentu
2.      Sinyal control bagi bus control; sinyal ini juga terdiri dari dua macam: sinyal control bagi memori dan sinyal control bagi modu-modul I/O

Didalam isi Control Unit, akan terlihat bahwa komponen ini tersusun atas 3 komponen yang lebih kecil, yaitu :
a.            Sequence Logic.
b.            Control Unit Memory
c.            Control Unit Register dan Decoder.
Sequence Logic merupakan rangkaian digital yang digerakkan untuk mengatur urutan operasi internal CPU, sedangkan penggeraknya adalah program atau mikro program yang ditanam pada Control Unit Memory
Control Unit Register and Decoder berperan sebagai register tempat meletakkan dan menterjemahkan instruksi. Instruksi tersebut adalah salah satu instruksi yang dapat dipahami oleh prosesor atau CPU tersebut di atas. Ringkasnya, Control Unit merupakan prosesor skala mini dengan kecepatan tinggi yang diprogram untuk mengendalikan CPU. Sedangkan CPU merupakan prosesor yang diprogram untuk mengendalikan operasi sistem komputer.



Macam-macam CU
1.      Single-Cycle CU
          Proses di Single-Cycle CU ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satucycle, maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control linehanya merupakan fungsi dariopcode saja. Clock cycle harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses men-decode opcode untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (branching). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”. Desain single-cycle ini lebih dapat bekerja dengan baik dan benar tetapi cycle ini tidak 
efisien.

2.      Multi-Cycle CU
         Berbeda dengan unit kontrol yangsingle-cycle, unit kontrol yangmulti-cycle lebih memiliki banyak fungsi. Dengan memperhatikan statedan opcode, fungsi boolean dari masing-masing output control line dapat ditentukan.Masing-masingnya akan menjadi fungsi dari 10 buah input logic. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bitopcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU.

Implementasi Unit Kontrol
  Ø  Implementasi hardwired
Unit kontrol merupakan rangkaian kombinatorial. Sinyal-sinyal logika inputnya akan didekodekan menjadi sinyal-sinyal logika output, yang merupakan sinyal-sinyal kontrol ke sistem komputer. Sinyal-sinyal input tersebut, seperti clock, flag, register instruction, dan sinyal kontrol merupakan input bagi unit kontrol untuk mengetahui status komputer. Sinyal keluaran yang dihasilkan akan mengendalikan sistem kerja komputer.
N buah input biner akan menghasilkan 2N output biner. Setiap instruksi memiliki opcode yang yang berbeda-beda. Opcode yang berbeda dalam instruksi akan menghasilkan sinyal kontrol yang berbeda pula. Pewaktu unit control mengeluarkan rangkaian pulsa yang periodik. Pulsa waktu ini digunakan untuk mengukur durasi setiap operasi mikro yang dijalankan CPU, intinya digunakan untuk sinkronisasi kerja masing-masing bagian.

Masalah dalam Merancang Implementasi Hardwired:
1.      Memiliki kompleksitas dalam pengurutan dan operasi mikronya
2.      Sulit didesain dan dilakukan pengetesan
3.      Tidak fleksibel
4.      Sulit untuk menambahkan instruksi baru

Jadi secara garis besar:
1.      Intinya unit control merupakan rangkaian kombinatorial
2.      Sinyal-sinyal logika inputnya akan dikodekan menjadi sekumpulan sinyal-sinyal logika output yang merupakan sinyal-sinyal kontrol ke system computer
3.      Input unit control meliputi sinyal-sinyal register instruksi,pewaktu, flag dan sinyal bus control
4.      Sinyal-sinyal tersebut sebagai masukkan bagi unit control dalam mengetahui status computer
5.      Selanjutnya dikodekan manghasilkan sinyal keluaran untuk mengendalikan system kerja computer
6.      n buah input biner akan menghasilkan 2n output biner.
7.      setiap instruksi memiliki opcode yang berbeda – beda.opcode yang berbeda dalam setiap instruksi akan menghasilkansinyal control yang berbeda pula
8.      pewaktu unit control mengeluarkan rangkaian pulsa yang periodic

  Ø  Implementasi microprogrammed
      Implementasi yang paling reliabel saat ini adalah implementasi microprogrammed. Unit kontrol memerlukan sebuah memori untuk menyimpan program kontrolnya. Fungsi–fungsi pengontrolan dilakukan berdasarkan program kontrol yang tersimpan pada unit kontrol. Selain itu, fungsi–fungsi pengontrolan tidak berdasarkan dekode dari input unit kontrol lagi. Teknik ini dapat menjawab kesulitan–kesulitan yang ditemui dalam implementasi hardwired.

Jadi secara garis besar:
1.      Unit control memerlukan sebuah memori untuk menyimpan program controlnya
2.      Fungsi-fungsi pengontrolan dilakukan berdasarkan program control yang tersimpan pada unit control.Fungsi-fungsi pengontrolan tidak berdasarkan decode dari input unit control lagi
3.      Teknik ini dapat menjawab kesulitan-kesulitan yang ditemui dalam implementasi hardwired

     CARA KERJA CONTROL UNIT
        Ketika sebuah komputer pertama kali diaktifkan power-nya, maka computer tersebut menjalankan operasi bootstrap. Operasi ini akan membaca sebuah instruksi dari suatu lokasi memory yang telah diketahui sebelumnya dan mentransfer instruksi tersebut ke control unit untuk dieksekusi. Instruksi-intruksi dibaca dari memory dan dieksekusi sesuai dengan urutan penyimpanannya. Program counter dari suatu computer menyediakan suatu cara untuk menyimpan lokasi instruksi berikutnya. Urutan eksekusi berubah dengan memindah lokasi intruksi baru ke program counter sebelum pembacaan (fetch) instruksi dikerjakan. Sebuah intruksi merupakan kalimat imperatif pendek yang sudah dapat menjelaskan makna dari perintah tersebut.

Suatu intruksi terdiri dari :
1.      subjek (komputernya)
2.      verb (suatu kode operasi yang mengindikasikan pekerjaan apa yang akan dilaksanakan)
3.      objek (operands) yang mengidentifikasikan nilai data atau lokasi memory.

        Ketika intruksi-intruksi diterima oleh Control Unit, operation code akan mengaktifkan urutan logic untuk mengeksekusi intruksi-intruksi tersebut.
Satu eksekusi program terdiri dari beberapa instruction cycle yang menjadi komponen penyusun dari program tersebut. Sedangkan untuk setiap instruction cycle terdiri dari beberapa sub cycle lagi seperti ftech cycle, indirect cycle, execute cucle, dan interrupt cycle. Setiap sub cycle ini disusun dari beberapa perintah dasar yang disebutmicro operation.

referensi: http://verychenko2116.blogspot.com/2012/07/soal-1.html

Minggu, 14 September 2014

Interkoneksi antar komponen komputer

1. Pemroses

Berfungsi untuk mengendalikan operasi komputer dan melakukan fungsi pemrosesan data.
Pemroses melakukan operasi logika dan mengelola aliran data dengan membaca instruksi dari memori dan mengeksekusinya.
Langkah kerja pemroses :
·         Mengambil instruksi biner dari memori
·         Mendekode instruksi menjadi aksi sederhana
·         Melakukan aksi
3 Tipe operasi komputer :
Operasi aritmatika (ADD, SUBSTRACT, MULTIPLY, DIVIDE)
Operasi logika (OR, AND, XOR, INVERTION)
Operasi pengendalian (LOOP, JUMP)
Pemroses terdiri dari :
·         ALU (Aritmatic Logic Unit), berfungsi untuk melakukan operasi aritmatika dan logika
·         CU (Control Unit), berfungsi untuk mengendalikan operasi yang dilaksanakan sistem komputer.
·         Register-register, berfungsi untuk :
o   Membantu pelaksanaan operasi yang dilakukan pemroses
o   Sebagai memori yang bekerja secara cepat, biasanya untuk tempat operand-operand dari operasi yang akan dilakukan.
o   Terbagi menjadi register data dan register alamat.
o   Register data terdiri dari general dan special purpose register.
o   Register alamat berisi :
§  Alamat data di memori utama
§  Alamat instruksi
§  Alamat untuk perhitungan alamat lengkap
§  Contoh : register indeks, register penunjuk segmen, register penunjuk stack, register penanda (flag)
Pemroses melakukan tugasnya dengan mengeksekusi instruksi-instruksi di program dengan mekanisme instruksi sebagai berikut :.
§  Pemroses membaca instruksi dari memori (fetch)
§  Pemroses mengeksekusi instruksi (execute)
Eksekusi program berisi pengulangan fetch dan execute. Pemrosesan satu instruksi disebut satu siklus instruksi (instruction cycle).

2. Memori

Berfungsi untuk menyimpan data dan program
Biasanya volatile, tidak dapat mempertahankan data dan program yang disimpan bila sumber daya energi (listrik) dihentikan.
Konsep program tersimpan (stored program concept), yaitu program (kumpulan instruksi) yang disimpan di suatu tempat (memori) dimana kemudian instruksi tersebut dieksekusi.
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.
Hirarki memori berdasarkan kecepatan akses :
§  Register (tercepat)
§  Cache memory ; Memori berkapasitas terbatas, berkecepatan tinggi yang lebih mahal dibanding memori utama. Cache memory adalah diantara memori utama dan register, sehingga pemroses tidak langsung mengacu memori utama tetapi di cache memory yang kecepatan aksesnya lebih tinggi.
§  Main memory
§  Disk cache (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.
§  Magnetic disk
§  Magnetic tape, optical disk (paling lambat)

3. Perangkat Masukan dan Keluaran (I/O)

Adalah perangkat nyata yang dikendalikan chip controller di board sistem atau card.
Controller dihubungkan dengan pemroses dan komponen lainnya melalui bus.
Controller mempunyai register-register untuk pengendaliannya yang berisi status kendali.
Tiap controller dibuat agar dapat dialamati secara individu oleh pemroses sehingga perangkat lunak device driver dapat menulis ke register-registernya sehingga dapat mengendalikannya.
Sistem operasi lebih berkepentingan dengan pengendali dibanding dengan perangkat fisik mekanis
Perangkat I/O juga memindahkan data antara komputer dan lingkungan eksternal.
Lingkungan eksternal dapat diantarmuka (interface) dengan beragam perangkat, seperti :
·         Perangkat penyimpan sekunder
·         Perangkat komunikasi
·         Terminal

4. Interkoneksi antar Komponen

Adalah struktur dan mekanisme untuk menghubungkan antar komponen dalam sistem komputer yang disebut bus.
Bus terdiri dari tiga macam, yaitu :
·         Bus alamat (address bus) ; Berisi 16, 20, 24 jalur sinyal paralel atau lebih. CPU mengirim alamat lokasi memori atau port yang ingin ditulis atau dibaca di bus ini. Jumlah lokasi memori yang dapat dialamati ditentukan jumlah jalur alamat. Jika CPU mempunyai N jalur alamat maka dapat mengalamati 2 pangkat N (2N) lokasi memori dan/atau port secara langsung.
·         Bus data (data bus) ; Berisi 8, 16, 32 jalur sinyal paralel atau lebih. Jalur-jalur data adalah dua arah (bidirectional). CPU dapat membaca dan mengirim data dari/ke memori atau port. Banyak perangkat pada sistem yang dihubungkan ke bus data tetapi hanya satu perangkat pada satu saat yang dapat memakainya.
·         Bus kendali (control bus); Berisi 4-10 jalur sinyal paralel. CPU mengirim sinyal-sinyal pada bus kendali untuk memerintahkan memori atau port. Sinyal bus kendali antara lain :
·         Memory read ; Untuk memerintahkan melakukan pembacaan dari memori.
·         Memory write ; Untuk memerintahkan melakukan penulisan ke memori.
·         I/O read ; Untuk memerintahkan melakukan pembacaan dari port I/O.
·         I/O write ; Untuk memerintahkan melakukan penulisan ke port I/O.
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 tersebut memerintahkan ke perangkat memori untuk mengeluarkan data pada lokasi tersebut ke bus data agat dibaca CPU.
Interkoneksi antar komponen ini membentuk satu sistem sendiri, seperti ISA (Industry Standard Architecture), EISA (Extended ISA) dan PCI (Peripheral Component Interconnect).
Secara fisik interkoneksi antar komponen berupa “perkawatan”.
Interkoneksi memerlukan tata cara atau aturan komunikasi agar tidak kacau (chaos) sehingga mencapai tujuan yang diharapkan.


http://www.itechgraph.com/blog/computerizing/4-komponen-dalam-sistem-komputer/#more-941