- Cara Kerja Sistem BUS
- Pada
sistem komputer akan lebih maju, jika arsitektur komputernya
diciptakan dengan lebih kompleks, sehingga tingkatannya lebih
performa, dan di pakai beberapa buah bus. Bus tersebut merupakan jalur
akses data antara beberapa device yang berbeda.
- Dengan
cara ini RAM, Prosesor, GPU (VGA AGP) dikaitkan oleh Otak bus dengan
tegangan yang atau biasa disebut dengan sebutan FSB (Front Side Bus) .
- Sementara
perangkat lain yang lebih lambat dihubungkan oleh bus yang tegangannya
lebih rendah yang terkait dengan bus lain yang lebih cepat sampai ke Otak
bus. Untuk komunikasi antar bus ini dapat digunakan sebuah bridge.
- Jenis BUS
Sedangkan
jenis-jenis bus itu sendiri juga dikelompokkan berdasarkan masingmasing
kriteria, tapi disini akan di jelaskan Jenis Bus menurut fungsinya masing -
masing . Langsung saja berikut Jenis-jenis Bus Berdasarkan Fungsi :
§
Data Bus :
- Berfungsi untuk mengirim data, membawa data dari dan ke perangkat atau
periferal
- Terdiri atas bagian tertentu atau jalur penghantar, 8, 16, 32 dan 64 bahkan
lebih jalur paralel
- Data ditransmisikan dalam dua jalur, yaitu dari CPU atau mesin proseses ke
unit memori atau modul I/O dan sebaliknya.
- Semakin lebar bus maka semakin besar data yang dapat dikirim sewaktu - waktu.
§
Control Bus:
- Berfungsi untuk mensinkronkan proses penerimaan dan pengiriman data.
- Untuk menentukan memori atau port agar siap ditulis atau dibaca.
- Sinyal Kontrol: RD, WR, IO/M
- Sinyal Read dan write : untuk mencari data dari perangkat
§
Address Bus:
- Membawa informasi agar dapat mengetahui tempat suatu perangkat atau periferal
- Untuk memilih tempat memori atau port yang akan ditulis atau dibaca
- Untuk mengatur rute data, muncul dari mana, tujuannya ke mana.
- Bersifat searah, cpu memberikan alamat yang bertujuan untuk mengatur
periferal mana yang dituju. Contoh memori mana yang dicari atau I/O mana yang
dituju.
- Semakin besar bus alamat, akan semakin banyak range lokasi tempat yang dapat
di temukan.
- Jumlah alamat yang dapat dicari pada Bus alamat yaitu sebanyak jumlah yang di
tentukan.
2. ALU
- Pengertian ALU
Arithmatic Logical Unit (ALU), adalah salah satu bagian/komponen dalam
sistem di dalam sistem komputer yang berfungsi melakukan operasi/perhitungan
aritmatika dan logika (Contoh operasi aritmatika adalah operasi penjumlahan dan
pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. ALU
bekerja besama-sama memori, di mana hasil dari perhitungan di dalam ALU di
simpan ke dalam memori.
Perhitungan dalam ALU menggunakan kode biner, yang merepresentasikan
instruksi yang akan dieksekusi (opcode) dan data yang diolah (operand). ALU
biasanya menggunakan sistem bilangan biner (two’s complement). ALU mendapat
data dari register. Kemudian data tersebut diproses dan hasilnya akan disimpan
dalam register tersendiri yaitu ALU.
- Operasi Pada ALU
Operasi aritmatika adalah operasi penjumlahan dan pengurangan, sedangkan
contoh operasi logika adalah logika AND dan OR. ALU melakukan operasi
aritmatika yang lainnya seperti pengurangan, dan pembagian dilakukan dengan
dasar penjumlahan. ALU melakukan operasi aritmatika dengan dasar pertambahan,
sedang operasi aritmatika yang lainnya, seperti pengurangan, perkalian, dan
pembagian dilakukan dengan dasar penjumlahan. Sehingga sirkuit elektronik di
ALU yang digunakan untuk melaksanakan operasi aritmatika ini disebut adder.
- Tugas Dan Fungsi ALU
Tugas dari ALU adalah melakukan keputusan dari operasi logika sesuai dengan
instruksi program. Operasi logika (logical operation) meliputi perbandingan dua
buah elemen logika dengan menggunakan operator logika, yaitu :
a.
sama dengan (=)tidak sama dengan (<>)kurang dari (<)kurang atau sama dengan dari (<=)lebih besar dari (>)lebih besar atau sama dengan dari (>=)
Arithmatic Logical Unit (ALU) Juga Bertugas membentuk fungsi – fungsi
pengolahan data komputer. ALU sering disebut mesin bahasa (machine language)
karena bagian ini mengerjakan instruksi – instruksi bahasa mesin yang diberikan
padanya. ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean,
yang masing – masing memiliki spesifikasi dan tugas tersendiri. Fungsi-fungsi
yang didefinisikan pada ALU adalah Add (penjumlahan), Addu (penjumlahan tidak
bertanda), Sub (pengurangan), Subu (pengurangan tidak bertanda), and, or, xor,
sll (shift left logical), srl (shift right logical), sra (shift right
arithmetic), dan lain-lain. Arithmetic Logical Unit (ALU) merupakan unit
penalaran secara logic.
ALU ini merupakan Sirkuit CPU berkecepatan tinggi yang bertugas menghitung
dan membandingkan. Angka-angka dikirim dari memori ke ALU untuk dikalkulasi dan
kemudian dikirim kembali ke memori. Jika CPU diasumsikan sebagai otaknya
komputer, maka ada suatu alat lain di dalam CPU tersebut yang kenal dengan nama
Arithmetic Logical Unit (ALU), ALU inilah yang berfikir untuk menjalankan
perintah yang diberikan kepada CPU tersebut.
ALU sendiri merupakan suatu kesatuan alat yang terdiri dari berbagai
komponen perangkat elektronika termasuk di dalamnya sekelompok transistor, yang
dikenal dengan nama logic gate, dimana logic gate ini berfungsi untuk
melaksanakan perintah dasar matematika dan operasi logika. Kumpulan susunan
dari logic gate inilah yang dapat melakukan perintah perhitungan matematika
yang lebih komplit seperti perintah “add” untuk menambahkan bilangan, atau
“devide” atau pembagian dari suatu bilangan. Selain perintah matematika yang
lebih komplit, kumpulan dari logic gate ini juga mampu untuk melaksanakan
perintah yang berhubungan dengan logika, seperti hasil perbandingan dua buah
bilangan.
Instruksi yang dapat dilaksanakan oleh ALU disebut dengan instruction set.
Perintah yang ada pada masing-masing CPU belum tentu sama, terutama CPU yang
dibuat oleh pembuat yang berbeda, katakanlah misalnya perintah yang
dilaksanakan oleh CPU buatan Intel belum tentu sama dengan CPU yang dibuat oleh
Sun atau perusahaan pembuat mikroprosesor lainnya. Jika perintah yang
dijalankan oleh suatu CPU dengan CPU lainnya adalah sama, maka pada level
inilah suatu sistem dikatakan compatible. Sehingga sebuah program atau
perangkat lunak atau software yang dibuat berdasarkan perintah yang ada pada
Intel tidak akan bisa dijalankan untuk semua jenis prosesor,kecuali untuk
prosesor yang compatible dengannya.
Seperti halnya dalam bahasa yang digunakan oleh manusia, instruction set
ini juga memiliki aturan bahasa yang bisa saja berbeda satu dengan lainnya.
Bandingkanlah beda struktur bahasa Inggris dengan Indonesia, atau dengan bahasa
lainnya, begitu juga dengan instruction set yang ada pada mesin, tergantung
dimana lingkungan instruction set itu digunakan.
- Struktur dan cara kerja ALU
ALU akan bekerja setelah mendapat perintah dari Control Unit yang terletak
pada processor. Control Unit akan memberi perintah sesuai dengan komando yang
tertulis(terdapat) pada register. Jika isi register memberi perintah untuk
melakukan proses penjumlahan, maka PC akan menyuruh ALU untuk melakukan proses
penjumlahan. Selain perintah, register pun berisikan operand-operand. Setelah
proses ALU selesai, hasil yang terbentuk adalah sebuah register yang berisi
hasil atau suatu perintah lainnya. Selain register, ALU pun mengeluarkan suatu
flag yang berfungsi untuk memberi tahu kepada kita tentang kondisi suatu
processor seperti apakah processor mengalami overflow atau tidak.
ALU (Arithmethic and Logic Unit) adalah bagian dari CPU yang bertanggung
jawab dalam proses komputasi dan proses logika. Semua komponen pada CPU bekerja
untuk memberikan asupan kepada ALU sehingga bisa dikatakan bahwa ALU adalah
inti dari sebuah CPU. Perhitungan pada ALU adalah bentuk bilangan integer yang
direpresentasikan dengan bilangan biner. Namun, untuk saat ini, ALU dapat
mengerjakan bilangan floating point atau bilangan berkoma, tentu saja
dipresentasikan dengan bentuk bilangan biner. ALU mendapatkan data (operand,
operator, dan instruksi) yang akan disimpan dalam register. Kemudian data
tersebut diolah dengan aturan dan sistem tertentu berdasarkan perintah control
unit. Setelah proses ALU dikerjakan, output akan disimpan dalam register yang
dapat berupa sebuah data atau sebuah instruksi.
Selain itu, bentuk output yang dihasilkan oleh ALU berupa flag signal. Flag
signal ini adalah penanda status dari sebuah CPU. Bilangan integer (bulat)
tidak dikenal oleh komputer dengan basis 10. Agar komputer mengenal bilangan
integer, maka para ahli komputer mengkonversi basis 10 menjadi basis 2. Seperti
kita ketahui, bahwa bilangan berbasis 2 hanya terdiri atas 1 dan 0. Angka 1 dan
0 melambangkan bahwa 1 menyatakan adanya arus listrik dan 0 tidak ada arus
listrik. Namun, untuk bilangan negatif, computer tidak mengenal simbol (-).
Komputer hanya mengenal simbol 1 dan 0. Untuk mengenali bilangan negatif, maka
digunakan suatu metode yang disebut dengan Sign Magnitude Representation.
Metode ini menggunakan simbol 1 pada bagian paling kiri (most significant) bit.
Jika terdapat angka 18 = (00010010)b, maka -18 adalah (10010010)b. Akan tetapi,
penggunaan sign-magnitude memiliki 2 kelemahan. Yang pertama adalah terdaptnya
-0 pada sign magnitude[0=(00000000)b; -0=(10000000)b].
Seperti kita ketahui, angka 0 tidak memiliki nilai negatif sehingga secara
logika, sign-magnitude tidak dapat melakukan perhitungan aritmatika secara
matematis. Yang kedua adalah, tidak adanya alat atau software satupun yang
dapat mendeteksi suatu bit bernilai satu atau nol karena sangat sulit untuk
membuat alat seperti itu. Oleh karena itu, penggunaan sign magnitude pada
bilangan negatif tidak digunakan, akan tetapi diganti dengan metode 2′s
complement. Metode 2′s complement adalah metode yang digunakan untuk
merepresentasikan bilangan negatif pada komputer. Cara yang digunakan adalah
dengan nilai terbesar dari biner dikurangin dengan nilai yang ingin dicari
negatifnya. Contohnya ketika ingin mencari nilai -18, maka lakukan cara
berikut:
1.
ubah angka 18 menjadi biner (00010010)b
2.
karena biner tersebut terdiri dari 8 bit, maka nilai maksimumnya adalah
11111111
3.
kurangkan nilai maksimum dengan biner 18 -> 11111111 – 00010010 =
11101101
4.
kemudian, dengan sentuhan terakhir, kita tambahkan satu -> 11101101 +
00000001 = 11101110
Dengan metode 2′s complement, kedua masalah pada sign magnitude dapat
diselesaikan dan komputer dapat menjalankan. Namun, pada 2′s complement, nilai
-128 pada biner 8 bit tidak ditemukan karena akan terjadi irelevansi.
3. Control Unit (CU)
Control
Unit Adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan /kendali
/ kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical
Unit) di dalamCPU tersebut. Output dari CU ini akan mengatur aktivitas dari bagian
lainnya dari perangkat CPUtersebut. Pada awal – awal desain
komputer, CU diimplementasikan sebagai ad-hoc logic yang susahuntuk didesain. Sekarang, CU
diimplementasikan sebagai sebuah microprogram yang disimpan didalam tempat penyimpanan
kontrol (control store). Pada hardwire implementation control unitsebagai
combinational circuit yang dibuat berdasarkan control signal yang akan
dikeluarkan. Jadiuntuk setiap control signal memiliki rangkaian logika tertentu
pada control unit yang dapatmenghasilkan control signal yang dimaksud. Secara
umum untuk metode ini digunakan PLA(programmable logic array) untuk
merepresentasikan control signal.Control unit dari sebuah prosesor memiliki 2
peran penting. Pertama, control unit mengatur processor agar
melakukan semua micro-operation dalam urutan yang benar. Kedua, control
unitmenghasilkan control signal yang memastikan supaya semua micro-operation
dieksekusi.Control signal tersebut secara umum menyebabkan salah satu dari hal
berikut: pembukaanatau penutupan dari gerbang-gerbang logika, transfer data
antara register-register, dan pengoperasianALU.
4. Register
Register tidak dapat dilepaskan dari mikroprosessor, sebab pada mikroprosessor
terdapat register yang berfungsi untuk menyimpan sementara hasil dari tahapan
operasi arithmetika dan logika pada mikroprosessor. Register dalam bahasa
rakitan menggunakan real mode memory yang sesuai dengan mikroprosessor Intel
generasi 8088 s/d Pentium.
Register yang terdapat pada mikroprosessor Intel terdiri
dari :
· General
purpose register (register serbaguna)
· Pointer
register (register pointer)
· Index
register (register indeks)
· Segment
register (register segment)
· Flag
register (register status).
Semua register di atas lebarnya 32 bit, kecuali register
segment (CS, DS, ES, SS, FS dan GS) hanya 16 bit. Register 32 bit dapat
digunakan sebagai register 16 bit, kecuali register General purpose register
dapat dibagi menjadi 8 bit (AL,AH, BL, BH, CL, CH, DL dan DH) yang berasal dari
16 bit (AX, BX, CX, DX). Register 32 bit diberi kode di depan register dengan E
misalnya: EAX, EBX, ECX dan EDX.
Macam-macam Jenis dan Fungsi Register. Berikut ini jenis dan
fungsi dari masing-masing Register yaitu :
1. General Purpose Register
(Register Serbaguna)
a. Register AX (Accumulator register) berfungsi sebagai tempat
Sementara hasil suatu operasi arithmetika atau logika (AL, AH, AX dan EAX) Memasukkan nomor layanan interupsi, untuk
keperluan pemesanan sebuah layanan interupsi (register AH).
- Menyimpan bilangan yang dikalikan (reg AL, AX, EAX) dan setengan bagian
terkecil (LSB) dari hasil perkalian (register DX-AX dan EDX-EAX).
-Menyimpan setengah bagian terkecil(LSB) sebuah bilangan dibagi (DX-AX dan
EDX-EAX) dan hasil bagi (AL, AX, EAX)
b. Register BX (Base Register) adalah register untuk
menyimpan alamat offset data yang terletak di memori (BL, BH, BX dan EBX)
c. Register CX (Counter Register) adalah register
serbaguna yang berfungsi sebagai:
- Pencacah untuk operasi loop (CX dan ECX)
- Pencacah untuk operasi shift dan rotate (CL)
-Pencacah (counter) untuk operasi string (CX)
d. Register DX (Data register) adalah register serbaguna yang
berfungsi sebagai :
- Penyimpan hasil perkalian 16 bit (DX-AX) dan 32 bit (EDX-EAX).
- Penyimpan hasil pembagian (DX-AX dan EDX-EAX)
- Penyimpan data hexadesimal (kode ASCII) di reg DL untuk dicetak di layar
monitor.
2. Pointer Register
Register ini untuk menunjukkan alamat sebuah data di lokasi
memori, dipakai saat operasi perpindahan data (dari/ke memori), operasi stack
(PUSH/POP) dan penunjukkan alamat suatu instruksi. Berikut adalah macam-macam
pointer register: SP (Stack Pointer) dan ESP, BP (Base Pointer) dan IP
(Instruction Pointer)
3. Index Register
Sama dengan pointer register, sering digunakan untuk
menunjukkan alamat sebuah data di lokasi memori pada operasi string.
Macam-macam register Index adalah : SI (Source Index), DI (Destination Index).
4. Segment Register
Segment register membentuk alamat memori untuk data. Pada
operasi real mode suatu segment register akan berbeda dengan segment register
pada operasi protected mode. Yang termasuk ke dalam segment register antara lain
:
Code segment -> untuk menunjukkan alamt instruksi
berikutnya.
a. Data
segment -> untuk menunjukkan alamat data pada transfer register
b. Extra
segment -> register tambahan untuk operasi string
c. Stack
segment -> dengan SP u/ menunjukkan stack dan memanggil suatu prosedur
(CALL) dan mengarah ke program utama (RET).
d. FS dan GS
register -> register tambahan u/ segmen memori yang besar.
5. Flag Register
Berfungsi untuk menunjukkan status (keadaan) sesaat dari
mikroprosessor. Bit-bit pada flag akan mengalami perubahan, tergantung proses
yang baru saja berlangsung. Adapun kode bit yaitu sebagai berikut :
· C
(carry) -> 1=ada carry out 0= tdk ada carry out
· P
(Parity) -> 1=paritas genap 0= paritas ganjil
· A
(auxxiliary carry) -> 1=ada carry 0=tdk ada carry
· Z
(zero) -> 1=hasilnya nol 0=hasilnya bukan nol
· S
(sign) -> 1=hasilnya negatif 0=hasilnya positif
· T
(trap) -> bila diset 1 dimungkinkan melakukan debugging.
· I
(interrupt) -> 1= pin INTR enable 0=pin INTR disable
· D
(direction) -> 1=cacahan turun 0=cacahan naik
· (Overflow)
-> menunjukkan adanya kelebihan kapasitas atau tidak
· IOPL
(input-output privalege level) -> untuk protected mode
· NT
(nested task) -> indikasi dari penggabungan dengan operasi lain.
· RF
(resume) -> untuk debugging.
· VF
(Virtual mode) -> untuk operasi virtual pada protected mode.
· AC
(alignment check) -> untuk data word dialamati ke memori.
· Register
merupakan tempat menyimpan data sementara yang berada dalam CPU.
· Register
terdiri atas 5 bagian yaitu : General Purpose Register, Pointer Register, Index
Register, Segment Register, Flag Register.
· Fungsi
setiap register bermacam-macam sesuai peruntukannya yang telah diatur oleh
pembuat mikroprosesor.
Sumber: hasanudin.staff.gunadarma.ac.id/Downloads/files/32415/Central+Processing+Unit.doc
http://www.blognovi.com/2016/04/apa-itu-sistem-bus-dalam-komputer.html
http://www.kampusbaru.net/2016/03/pengertian-register-memory-alu-variabel.html
https://id.scribd.com/doc/151024992/Pengertian-Control-Unit