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
Komponen Utama CPU
v Arithmetic and Logic Unit (ALU), bertugas membentuk fungsi ‑ fungsi
pengolahan data komputer
v
Control
Unit, bertugas mengontrol operasi CPU dan secara keseluruhan mengontrol
komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan
fungsi ‑ fungsi operasinya
v
Registers,
adalah media penyimpan internal CPU yang digunakan saat proses pengolahan data
v 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
v
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
v
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
v
CPU awalnya akan membaca instruksi dari memori
v
Terdapat register dalam CPU yang berfungsi
mengawasi dan menghitung instruksi selanjutnya, yang disebut Program Counter
(PC)
v
PC akan menambah satu hitungannya setiap kali
CPU membaca instruksi
v
Instruksi ‑ instruksi yang dibaca akan dibuat
dalam register instruksi (IR)
Aksi-Aksi CPU
v CPU
‑ Memori, perpindahan data dari CPU ke memori dan sebaliknya
v
CPU - I/0, perpindahan data dari CPU ke
modul I/0 dan sebaliknya
v
Pengolahan Data, CPU membentuk
sejumlah operasi aritmatika dan logika terhadap data
v Kontrol,
merupakan instruksi untuk pengontrolan fungsi atau kerja. Misalnya
instruksi pengubahan urusan eksekusi
Siklus Instruksi
v
Instruction Addess Calculation (IAC),
yaitu mengkalkulasi atau menentukan alamat instruksi berikutnya yang akan
dieksekusi. Biasanya melibatkan penambahan bilangan tetap ke alamat instruksi
sebelumnya
v
Instruction Fetch (IF), yaitu
membaca atau pengambil instruksi dari lokasi memorinya ke CPU
v
Instruction Operation Decoding (IOD),
yaitu menganalisa instruksi untuk menentukan jenis operasi yang akan
dibentuk dan operand yang akan digunakan
v
Operand Address Calculation (OAC),
yaitu menentukan alamat operand, hal ini dilakukan apabila melibatkan
referensi operand pada memori
v
Operand Fetch (OF), adalah
mengambil operand dari memori atau dari modul 1/0
v
Data Operation (DO), yaitu
membentuk operasi yang diperintahkan dalam instruksi
v
Operand store (OS), yaitu
menyimpan hasil eksekusi ke dalam memori
Fungsi Interrupt
v
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
v
Tujuan interupsi secara umum untuk menejemen
pengeksekusian routine instruksi agar efektif dan efisien antar CPU dan modul ‑
modul I/0 maupun memori
v
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
v
Program, yaitu interupsi yang
dibangkitkan dengan beberapa kondisi yang terjadi pada hasil eksekusi program.
Contohnya: arimatika overflow, pembagian nol, oparasi ilegal
v
Timer, adalah interupsi yang dibangkitkan
pewaktuan dalam prosesor. Sinyal ini memungkinkan sistem operasi menjalankan
fungsi tertentu secara reguler
v
//0, sinyal interupsi yang dibangkitkan
oleh modul I/0 sehubungan pemberitahuan kondisi error dan penyelesaian suatu
operasi
v Hardware
failure, adalah interupsi yang dibangkitkan oleh kegagalan daya atau
kesalahan paritas memori
Mekanisme Interupsi
v
Saat suatu modul telah selesai menjalankan
tugasnya dan siap menerima tugas berikutnya maka modul ini akan mengirimkan
permintaan interupsi ke prosesor
v
Prosesor akan menghentikan eksekusi yang
dijalankannya untuk menghandel routine interupsi
v
Setelah program interupsi selesai maka prosesor
akan melanjutkan eksekusi programnya kembali
v
Saat sinyal interupsi diterima prosesor ada dua
kemungkinan tindakan, yaitu interupsi diterima/ditangguhkan dan interupsi
ditolak
Iterupsi Ditangguhkan
v
Prosesor menangguhkan eksekusi program yang
dijalankan dan menyimpan konteksnya. Tindakan ini adalah menyimpan alamat
instruksi berikutnya yang akan dieksekusi dan data lain yang relevan
v
Prosesor menyetel program counter (PC) ke alamat
awal routine interrupt handler
Iterupsi Ganda
v
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
v
Prioritas bagi interupsi dan interrupt
handler mengizinkan interupsi berprioritas lebih tinggi ditangani terlebih
dahulu. Pedekatan ini disebut pengolahan interupsi bersarang
Interupsi Bersarang
v Sistem memiliki tiga perangkat 1/0: printer,
disk, dan saluran komunikasi
v
Pada
awal sistem melakukan pencetakan dengan printer, saat itu terdapat pengiriman
data pada saluran komunikasi sehingga modul komunikasi meminta interupsi
v
Proses
selanjutnya adalah pengalihan eksekusi interupsi mudul komunikasi, sedangkan
interupsi printer ditangguhkan
v
Saat
pengeksekusian modul komunikasi terjadi interupsi disk, namun karena
prioritasnya lebih rendah maka interupsi disk ditangguhkan
v Setelah interupsi modul komunikasi selesai
akan dilanjutkan interupsi yang memiliki prioritas lebih tinggi, yaitu disk
v
Bila
interupsi disk selesai dilanjutkan eksekusi interupsi printer
v
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
telah siap
= menunjukan bahwa piranti sedang
sibuk dan tidak dapat digunakan pada saat itu
> 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