Jumat, 09 November 2018

CPU, BUS dan ALU

CPU, BUS dan ALU

1.      CPU ( Central Processing Unit )

A.     Pengertian CPU
Unit Pengolah Pusat (CPU) merujuk kepada perangkat keras komputer yang memahami dan melaksanakan perintah dan data dari perangkat lunak. Istilah lain, prosesor (pengolah data), sering digunakan untuk menyebut CPU. Adapun mikroprosesor adalah CPU yang diproduksi dalam sirkuit terpadu, seringkali dalam sebuah paket sirkuit terpadu-tunggal. Sejak pertengahan tahun 1970-an, mikroprosesor sirkuit terpadu-tunggal ini telah umum digunakan dan menjadi aspek penting dalam penerapan CPU.
B.      Cara kerja CPU
1.      Membaca, mengkodekan dan mengeksekusi instruksi program
2.      Mengirim data dari dan ke memori, serta dari dan ke bagian input/output.
3.      Merespon interupsi dari luar.
4.      Menyimpan data untuk sementara waktu menyediakan clock dan sinyal kontrol kepada               sistem.

C.    Fungsi CPU
CPU berfungsi seperti kalkulator, hanya saja CPU jauh lebih kuat daya pemrosesannya. Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang dimasukkan melalui Source
D.    Komponen CPU
terbagi menjadi beberapa macam, yaitu :
1.      Unit Kontrol yang mampu mengatur jalannya program.
2.      Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses.
3.      ALU unit ini yang bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang
4.      CPU Interconnections adalah sisem koneksi dan bus yang menghubungkan komponen internal CPU.

 Gambar 1. CPU
2.      Bus 

A.    Pengertian BUS
Bus adalah Jalur komunikasi yang dibagi pemakai Suatu set kabel tunggal ,digunakan untuk menghubungkan berbagai subsistem. Karakteristik penting sebuah bus adalah bus merupakan media transmisi yang dapat digunakan bersama. Sejumlah perangkat yang terhubung ke bus dan suatu sinyal yang ditransmisikan oleh salah satu perangkat ini dapat ditermia oleh salah satu perangkat yang terhubung ke bus.Bila 2 buah perangkat melakukan transmisi dalam waktu yang bersamaan, maka sinyal-sinyalnya akan bertumpang tindih dan menjadi rusak. Dengan demikain, hanya sebuah perangkat saja yang akan berhasil melakukan transimi pada suatu saat tertentu. Sistem komputer terdiri dari sejumlah bus yang berlainan yang menyediakan jalan antara dua buah komponen pada bermacam-macam tingkatan hirarki sistem komputer. Suatu Komputer tersusun dari beberapa komponen penting seperti CPU, memori, perangkat Input/Output. setiap computer saling berhubungan membentuk kesatuan fungsi. System bus adalah  sebagai penghubung bagi keseluruhan komponen komputer dalam menjalankan tugasnya. Transfer data antar komponen komputer sangatlah mendominasi kerja suatu computer. Data atau program yang tersimpan dalam memori dapat diakses dan dieksekusi CPU melalui perantara bus, begitu juga kita dapat melihat hasil eksekusi melalui monitor juga menggunakan sistem bus. Pada sistem komputer yang lebih modern, arsitektur komputernya  akan  lebih kompleks, sehingga dapat untuk meningkatkan  performa, digunakan beberapa buah bus. Tiap bus merupakan jalur data antara beberapa device yang berbeda. Dengan cara ini RAM, Prosesor, GPU (VGA AGP) dihubungkan oleh bus utama berkecepatan tinggi yang lebih dikenal dengan nama FSB (Front Side Bus) . Sementara perangkat lain yang lebih lambat dihubungkan oleh bus yang berkecepatan lebih rendah yang terhubung dengan bus lain yang lebih cepat sampai ke bus utama. Untuk komunikasi antar bus ini digunakan sebuah bridge.

B. Karakteristik Bus adalah :
1. Jumlah Interupsi Menentukan banyak perangkat independen yang melakukan I/O.
2. Ukuran bus data eksteral berakibat pada kecepatan operasional I/O.
3. Ukuran bus alamat menentukan banyak memori yang ditunjuk board ekspansi.
4. Kecepatan clock maksimum yang dapat diakomadasi bus berakibat pada kinerja.
C. Struktur Bus
Sebuah bus sistem terdiri dari 50 hingga 100 saluran yang terpisah. Masing-masing saluran ditandai dengan arti dan fungsi khusus. Walaupun terdapat sejumlah rancangan bus yang berlainan, fungsi saluran bus dapat diklasifikasikan menjadi tiga kelompok, yaitu saluran data, saluran alamat, dan saluran kontrol. Selain itu, terdapat pula saluran distribusi daya yang memberikan kebutuhan daya bagi modul yang terhubung.
D. Interkoneksi Bus
1. Bus Data
Jalur data yang dilalu informasi ke dan dari  mikroprosesor data bus. Adalah jalurjalur perpindahan data antar modul dalam sistem komputer. Karena pada suatu saat tertentu masingmasing 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. Misalnya, bila bus data lebarnya 8 bit, dan setiap instruksi panjangnya 16 bit, maka CPU harus dua kali mengakses modul memori dalam setiap siklus instruksinya. Sifatnya bidirectional, artinya CPU dapat membaca dan menirma data melalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau 64 jalur paralel, jumlah saluran diartikan dengan lebar bus data.
2. Address Bus
Digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer data. Pada jalur ini, CPU akan mengirimkan alamat memori yang akan ditulis atau dibaca. Misalnya, bila CPU akan membaca sebuah word data dari memori, maka CPU akan menaruh alamat word yang dimaksud pada saluran alamat. Lebar bus alamat akan menentukan kapasitas memori maksimum sistem. Address bus biasanya terdiri atas 16, 20, 24, atau 32 jalur paralel. Lebar bus alamat akan menentukan kapasitas memori maksimum sistem. Selain itu, umumnya saluran alamat juga dipakai untuk mengalamati port-port input/output.
3. Control Bus
Digunakan untuk mengontrol penggunaan serta akses ke Data Bus dan Address Bus. Karena data dan saluran alamat dipakai bersama oleh seluruh komponen, maka harus ada alat untuk mengontrol penggunaannya. Sinyal-sinyal kontrol melakukan transmisi baik perintah maupun informasi pewaktuan diantara modul-modul sistem. Sinyal-sinyal pewaktuan menunjukkan validitas data dan informasi alamat. Sinyal-sinyal perintah mespesifikasikan operasi-operasi yang akan dibentuk. Umumnya saluran kontrol meliputi : memory write, memory read, I/O write, I/O read. Terdiri atas 4 sampai 10 jalur paralel.

Gambar 2. Bus Slots

3.      ALU (Arithmatic Logical Unit)
A.    Pengertian ALU
ALU atau yang biasa disebut dengan Arithmetic Logical Unit adalah suatu komponen dalam sistem komputer yang memiliki 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 dalamALU di simpan ke dalam memori 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. 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.

B.     Fungsi ALU
Fungsi ALU (Arithmetic Logical Unit)  adalah untuk melakukan suatu proses data yang berbentuk angka dan logika, seperti data matematika dan statistika. ALU terdiri dari register-register untuk menyimpan informasi. Tugas utama dari ALU adalah melakukan perhitungan aritmatika (matematika) dan melakukan keputusan dari operasi sesuai dengan instruksi program yaitu operasi logika (logical operation).  Sirkuit yang digunakan oleh ALU ini disebut dengana dder karena Adder  digunakan untuk memproses operasi aritmetika, maka Adder juga sering disebut rangkaian kombinasional aritmetika. Ada 3 jenis Adder yaitu:
·                     Rangkaian Adder  yang hanya menjumlahkan dua bit disebut Half Adder. 
·                     Rangkaian Adder  yang menjumlahkan tiga bit disebut Full Adder.
·                     Rangkaian Adder yang menjumlahkan banyak bit disebut paralel Adder. 

C.    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. 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.

Gambar 3. Cara kerja ALU


Daftar pustaka :

Tidak ada komentar:

Posting Komentar