Kamis, 21 November 2013

ORGANISASI KOMPUTER DASAR

ORGANISASI KOMPUTER DASAR
 
Organisasi Komputer mempelajari bagian yang terkait dengan unit unit operasional komputer dan hubungan antara komponen sistem komputer.
contoh: sinyal kontrol, interface, teknologi memori
 Struktur komputer adalah cara komponen – komponen komputer saling terkait dan berhubungan
 Fungsi komputer adalah operasi masing masing komponen sebagai bagian dari struktur
Dari asal katanya “to compute” komputer berarti alat penghitung. Ternyata sekarang
komputer tak hanya berguna sebagai alat hitung saja tetapi sudah meluas fungsinya.
Cara kerja sebuah komputer dapat dideskripsikan secara sederhana dengan diagram
blok sebagai berikut :
Secara umum masing-masing bagian dapat kita rinci sebagai berikut :
1. Input Device
Input device adalah peralatan yang kita gunakan untuk memasukkan data atau perintah ke dalam komputer. Contoh :
• keyboard
• mouse
• scanner
2. Output Device
Output device adalah peralatan yang kita gunakan untuk melihat hasil pengolahan data atau perintah yang dilakukan oleh komputer. Contoh :
• monitor
3. I/O Ports
I/O adalah Input/Output. Bagian ini digunakan untuk menerima ataupun mengirim data keluar sistem. Peralatan-peralatan input dan output seperti yang tercantum di atas terhubung melalui port ini.
4. Central Processing Unit
Central Processing Unit (CPU) merupakan otak sistem komputer. CPU memilikidua bagian fungsi operasional yaitu Arithmetical Logical Unit (ALU) sebagai pusat pengolah data serta bagian Control Unit (CU) digunakan untuk mengontrol kerja komputer. Biasa disebut dengan nama processor saja.
5. Memory
Bagian ini terdiri dari internal memory yaitu berupa RAM (Random Access Memory) dan ROM (Read Only Memory) serta eksternal memory yaitu berbagai macam disk seperti hard disk, floppy disk dan optical disc.
6. Data Bus
Data bus adalah jalur-jalur perpindahan data antarmodul dalam sistem komputer. Biasanya terdiri dari 8, 16 , 32 atau 64 jalur data yang paralel. Karena pada suatu saat tertentu masing-masing saluran hanya dapat membawa 1 bit data, maka jumlah saluran menentukan jumlah bit yang dapat ditransfer pada suatu saat. Lebar data bus ini menentukan kinerja sistem secara keseluruhan. Sifatnya bidirectional, misalnya CPU dapat membaca dari memory atau port dan dapat juga mengirim ke memory atau port.
7. Address Bus
Address Bus digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer data. Pada jalur ini CPU akan mengirimkan alamat memory yang akan ditulis atau dibaca. Address Bus biasanya terdiri atas 16, 20, 24 atau 32 jalur paralel. Lebar Address Bus menentukan kapasitas memory maksimum sistem. Sebagai contoh bila CPU mempunyai Address Bus 20 bit maka CPU dapat mengalamatkan 220 atau 1048576 alamat (1 MB).
8. Control Bus
Control Bus digunakan untuk mengontrol penggunaan serta akses ke Data Bus dan Address Bus. Control Bus terdiri dari 4 sampai 10 jalur paralel. CPU akan mengirimkan sinyal pada control bus ini bila akan meng-enable sebuah alamat yang ditunjuk, baik itu memory atau I/O port.
A. Struktur Utama Komputer
Struktur CPU
Fungsi dari Komputer
Pemindahan data
– Contoh: keyboard ke screen
Penyimpanan data
– Contoh: Internet download ke disk
Pemrosesan data dari penyimpan data ke I/O
– Contoh: printing a bank statement
Komponen Utama CPU
 Arithmetic and Logic Unit (ALU), bertugas membentuk fungsi fungsi pengolahan data komputer
 Control Unit, bertugas mengontrol operasi CPU dan secara keseluruhan mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi fungsi operasinya
 Registers, adalah media penyimpan internal CPU yang digunakan saat proses pengolahan data
 CPU Interconnections, adalah sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU, unit kontrol dan register register dan juga dengan bus bus eksternal CPU yang menghubungkan dengan sistem lainnya
Fungsi CPU
 Fungsi CPU adalah penjalankan program program yang disimpan dalam memori utama dengan cara mengambil instruksi instruksi, menguji instruksi tersebut dan mengeksekusinya satu persatu sesuai alur perintah
 Proses Eksekusi Program adalah dengan mengambil pengolahan instruksi yang terdiri dari dua langkah, yaitu : operasi pembacaan instruksi (fetch) dan operasi pelaksanaan instruksi (execute)
Siklus Fetch-Eksekusi
 CPU awalnya akan membaca instruksi dari memori
 Terdapat register dalam CPU yang berfungsi mengawasi dan menghitung instruksi selanjutnya, yang disebut Program Counter (PC)
 PC akan menambah satu hitungannya setiap kali CPU membaca instruksi
 Instruksi instruksi yang dibaca akan dibuat dalam register instruksi (IR)
Aksi-Aksi CPU
 CPU Memori, perpindahan data dari CPU ke memori dan sebaliknya
 CPU – I/0, perpindahan data dari CPU ke modul I/0 dan sebaliknya
 Pengolahan Data, CPU membentuk sejumlah operasi aritmatika dan logika terhadap data
 Kontrol, merupakan instruksi untuk pengontrolan fungsi atau kerja. Misalnya instruksi pengubahan urusan eksekusi
Siklus Instruksi
 Instruction Addess Calculation (IAC), yaitu mengkalkulasi atau menentukan alamat instruksi berikutnya yang akan dieksekusi. Biasanya melibatkan penambahan bilangan tetap ke alamat instruksi sebelumnya
 Instruction Fetch (IF), yaitu membaca atau pengambil instruksi dari lokasi memorinya ke CPU
 Instruction Operation Decoding (IOD), yaitu menganalisa instruksi untuk menentukan jenis operasi yang akan dibentuk dan operand yang akan digunakan
 Operand Address Calculation (OAC), yaitu menentukan alamat operand, hal ini dilakukan apabila melibatkan referensi operand pada memori
 Operand Fetch (OF), adalah mengambil operand dari memori atau dari modul 1/0
 Data Operation (DO), yaitu membentuk operasi yang diperintahkan dalam instruksi
 Operand store (OS), yaitu menyimpan hasil eksekusi ke dalam memori
Fungsi Interrupt
 Fungsi interupsi adalah mekanisme penghentian atau pengalihan pengolahan instruksi dalam CPU kepada routine interupsi. Hampir semua modul (memori dan I/0) memiliki mekanisme yang dapat menginterupsi kerja CPU
 Tujuan interupsi secara umum untuk menejemen pengeksekusian routine instruksi agar efektif dan efisien antar CPU dan modul modul I/0 maupun memori
 Setiap komponen komputer dapat menjalankan tugasnya secara bersamaan, tetapi kendali terletak pada CPU disamping itu kecepatan eksekusi masing masing modul berbeda sehingga dengan adanya fungsi interupsi ini dapat sebagai sinkronisasi kerja antar modul
Sinyal Interupsi
 Program, yaitu interupsi yang dibangkitkan dengan beberapa kondisi yang terjadi pada hasil eksekusi program. Contohnya: arimatika overflow, pembagian nol, oparasi ilegal
 Timer, adalah interupsi yang dibangkitkan pewaktuan dalam prosesor. Sinyal ini memungkinkan sistem operasi menjalankan fungsi tertentu secara reguler
 //0, sinyal interupsi yang dibangkitkan oleh modul I/0 sehubungan pemberitahuan kondisi error dan penyelesaian suatu operasi
 Hardware failure, adalah interupsi yang dibangkitkan oleh kegagalan daya atau kesalahan paritas memori
Mekanisme Interupsi
 Saat suatu modul telah selesai menjalankan tugasnya dan siap menerima tugas berikutnya maka modul ini akan mengirimkan permintaan interupsi ke prosesor
 Prosesor akan menghentikan eksekusi yang dijalankannya untuk menghandel routine interupsi
 Setelah program interupsi selesai maka prosesor akan melanjutkan eksekusi programnya kembali
 Saat sinyal interupsi diterima prosesor ada dua kemungkinan tindakan, yaitu interupsi diterima/ditangguhkan dan interupsi ditolak
Iterupsi Ditangguhkan
 Prosesor menangguhkan eksekusi program yang dijalankan dan menyimpan konteksnya. Tindakan ini adalah menyimpan alamat instruksi berikutnya yang akan dieksekusi dan data lain yang relevan
 Prosesor menyetel program counter (PC) ke alamat awal routine interrupt handler
Iterupsi Ganda
 Menolak atau tidak mengizinkan interupsi lain saat suatu interupsi ditangani prosesor. Kemudian setelah prosesor selesai menangani suatu interupsi maka interupsi lain baru di tangani. Pendekatan ini disebut pengolahan interupsi berurutan / sekuensial
 Prioritas bagi interupsi dan interrupt handler mengizinkan interupsi berprioritas lebih tinggi ditangani terlebih dahulu. Pedekatan ini disebut pengolahan interupsi bersarang
Interupsi Bersarang
 Sistem memiliki tiga perangkat 1/0: printer, disk, dan saluran komunikasi
 Pada awal sistem melakukan pencetakan dengan printer, saat itu terdapat pengiriman data pada saluran komunikasi sehingga modul komunikasi meminta interupsi
 Proses selanjutnya adalah pengalihan eksekusi interupsi mudul komunikasi, sedangkan interupsi printer ditangguhkan
 Saat pengeksekusian modul komunikasi terjadi interupsi disk, namun karena prioritasnya lebih rendah maka interupsi disk ditangguhkan
 Setelah interupsi modul komunikasi selesai akan dilanjutkan interupsi yang memiliki prioritas lebih tinggi, yaitu disk
 Bila interupsi disk selesai dilanjutkan eksekusi interupsi printer
 Selanjutnya dilanjutkan eksekusi program utama
B. KOMPONEN SISTEM
Sebuah komputer moderen/digital dengan program yang tersimpan di dalamnya merupakan sebuah system yang memanipulasi dan memproses informasi menurut kumpulan instruksi yang diberikan. Sistem tersebut dirancang dari modul-modul hardware seperti :
1. Register
2. Elemen aritmatika dan logika
3. Unit pengendali
4. Unit memori
5. Unit masukan/keluaran (I/O)
Komputer dapat dibagi menjadi 3 bagian utama, yaitu :
1. Unit pengolahan pusat (CPU)
2. Unit masukan/keluaran (I/O)
3. Unit memori
Organisasi dasar dari sebuah komputer dapat ditunjukan pada
blok diagaram pada gambar di bawah ini :
Keterangan :
CPU mengendalikan urutan dari semua pertukaran informasi dalam komputer dan dengan dunia luar melalui unit I/O. Sedangkan unit memori terdiri dari sejumlah besar lokasi
yang menyimpan program dan data yang sedang aktif digunakan CPU. Ketiga unit tersebut dihubungkan dengan berbagai macam bus.
• Bus adalah sekelompok kawat atau sebuah jalur fisik yang berfungsi menghubungkan register-register dengan unit-unit fungsional yang berhubungan dengan tiap-tiap modul.
Informasi saling dipertukarkan di antara modul dengan melalui bus.
C. OPERASI MIKRO
Adalah operasi tingkat rendah yang dapat dilakukan oleh komputer atau CPU sehingga fungsi-fungsi operasi akan dihasilkan untuk memindahkan data antar register.
Salah satu cara dalam melakukan operasi mikro tersebut dengan menggunakan bahasa transfer register / Register Transfer Language (RTL).
RTL adalah sebuah bahasa yang digunakan untuk menjabarkan atau melaksanakan operasi mikro.Untuk mengungkapkan bahasa RTL ini dapat digunakan notasi RTL yang merupakan aturan penulisan pemberian instruksi RTL. Contoh notasi tersebut antara lain :
• Notasi RTL untuk mentransfer isi register A ke B
• Notasi RTL untuk mentransfer bagian-bagian dari register (field). Sebuah field pada sebuah register dinotasikan dengan menggunakan tanda kurung. Field AD di register IR ditransfer ke register PC
• Notasi RTL untuk mentransfer field AD dari register IR ke register PC
Isi register X ditransfer ke bit 0 sampai 3 pada register R1, yang berari X mempeunyai panjang bit adalah 4 Selain itu, dapat juga dipakai konstanta pada sisi sebelah kanan tanda panah.
Artinya simpan nilai 5 pada register L
• Notasi RTL untuk menggambarkan berbagai macam operasi-mikro Aritmatika.
Artinya isi register A1 dan A2 dijumlahkan dengan menggunakan sirkuit adder biner dan hasil jumlahnya ditransfer ke register A3. Namum apabila dilakukan pengulangan penjumlahan akan menyebabkan overflow dan untuk menampung overflow tersebut digunakan register 1-bit yaitu V sebagai register overflow serta pelengkap A3.
• Notasi RTL untuk menggambarkan berbagai macam operasi-mikro Logika.
Artinya bahwa logika OR dari sis register A dan B ditransfer ke register C. Begitu juga dengan operasi AND
• Notasi RTL untuk menggambarkan transfer data ke dan dari word memori.
Dalam RTL, unit memori utama pada komputer dianggap sebagai M dan menulis word ke-i dalam memori menjadi M[i].Proses pembacaan memori (memory read) adalah :
Proses penulisan memori (memory write) adalah :
artinya word memori yang alamatnya ditunjukkan oleh register A ditransfer ke atau dari register B dalam CPU.
• Notasi RTL digunakan untuk transfer register hanya pada kondisi tertentu, hal tersebut dilakukan dengan 2 cara :
1. Menggunakan pernyataan kondisi logika (logical condition)
Men-set 0 ke register Q hanya jika nilai register V lebih besar dari nilai register W.
Note :
Pernyataan kondisi logikal hanya didefinisikan untuk IF
– THEN dan tidak untuk ELSE.
2. Menggunakan pernyataan kondisi pengendalian (control condition)
Dengan metode ini, kondisinya merupakan fungsi logikal dari variabel biner yang mengatur input register. Fungsi-fungsi ini dijabarkan disebelah kiri dari operasi transfer register dan diikuti oleh tanda titik dua. Keterangan contoh di atas Isi Y dipindahkan ke X hanya jika t0 bernilai 1 dan salah satu c1 atau c2 juga bernilai 1.Namun jika kondisi tertentu adalah 0, simbol utama (‘) harus digunakan sehingga pernyataan RTL – nya adalah
maka transfer hanya akan terjadi jika t0 bernilai 0 dan
salah satu c1 atau c2 juga bernilai 1.
D. SIC (SIMPLIFIED INSTRUCTIONAL COMPUTER)
Komputer yang didasarkan pada SIC ini merupakan komputer yang termasuk dalam perancangan arsitektur yang sangat sederhana dan komputer ini dipersembahkan oleh BECK (1985).
Struktur Mesin SIC terdiri dari :
1. CPU
2. Unit memori
3. Minimal satu unit prinati I/O
Untuk CPU yang digunakan terdiri dari 13 register khusus, seperti yang ada pada table di bawah ini.
Format instruksi pada mesin SIC :
Keterangan :
OP = OPCODE 8 bit yang menerangkan operasi-mikro yang akan dijalankan
IX = flag indeks yang menunujukkan mode pengalamatan yang harus digunakan
AD = alamat untuk memori operand 15 bit
• Pengalamatan langsung (direct addressing) yaitu operand disimpan di dalam M[AD]
• Pengalamatan berindeks (index addressing) yaitu operand disimpan di dalam M[AD = (X)] dengan bit IX bernilai 1
Penggunaan register-register pada SIC
1. Register A = register yang digunakan untuk proses perhitungan
2. Register X = register yang digunakan untuk mode pengalamatan berindex
3. Register PC = register yang menyimpan alamat instruksi berikutnya
4. Register L = register yang menyimpan alamat asal sebelum melakukan subroutines
5. Register IR = register yang menyimpan instruksi yang sedang dikerjakan
6. Register MBR = register yang digunakan untuk proses masukan atau keluaran data dari memori
7. Register MAR = register yang menyimpan alamat memori untuk proses pembacaan atau penulisan
8. SW = register yang berisi informasi status relatif terhadap instruksi sebelumnya
9. C = register yang membangkitkan signal waktu t0, t1, t2, t3
10. INT = register yang menentukan apakah signal interrupt telah diterima
11. F = register yang digunakan dalam proses”siklus fetch’
12. E = register khusus yang digunakan dalam proses “siklus eksekusi’
13. S = register yang akan mengaktifkan register C
Kumpulan Instruksi SIC
Ada 21 instruksi SIC yang digunakan, dimana pada instruksi ini m menunjukkan address memori dari operand dan (m) menunjukkan nilai yang disimpan pada address memori tersebut. Opcode instruksinya ditulis dalam notasi heksadesimal.
• JSUB dan RSUB merupakan dua instruksi yang berhubungan dengan subrutin. JSUB menyimpan PC saat ini ke L dan kemudian melompat ke subrutin dengan menyimpan operand ke PC. RSUB kembali dari subrutin dengan melompat ke lokasi yang dinyatakan oleh L.
• Instruksi TD digunakan untuk menguji piranti I/O sebelum berusaha untuk membaca dari atau menulis ke piranti tersebut.Hasil pengujian tersebut disimpan di dalam kode kondisi (condition code), field CC, pada SW. Panjang field ini 2 bit dan digunakan untuk mewakili salah satu dari tiga nilai
Jika instruksi TD dijalankan, nilai field CC aka di-set menurut kode berikut :
menunjukkan bahwa piranti tidak beroperasi
• Instruksi COMP digunakan juga untuk men-set field CC. Nilai yang disimpan field CC setelah sebuah instruksi COMP setelah sebuah instruksi COMP menggambarkan hubungan antara A dan operand instruksi
• Instruksi IRT digunakan oleh interrupt handler agar menyebabkan lompatan kembali ke tempat dimana CPU berada sebelum intrupsi terjadi.
Jika interupsi terjadi, CPU akan menyimpan PC saat ini ke dalam memori pada address 0. Untuk kembali dari sebuah interupsi , isi dari alamat memori ini harus di-load kembali ke dalam PC.
• Instruksi-instruksi lainnya adalah operasi aritmatika dan logika, transfer dari pengendalian(jump), loading register, storing register atau membaca dan menulis ke piranti I/O.

Tidak ada komentar:

Posting Komentar