Sabtu, 15 November 2014

2. CPU ( sistem Bus dan ALU)



Central Processing Unit merupakan komponen terpenting di dalam suatu sistem komputer. Untuk dapat menjalankan fungsinya dengan baik, maka CPU tersusun oleh komponen – komponen. Komponen – komponen tersebut antara lain Control Unit (CU), Arithmetic and Logic Unit (ALU), Registers dan CPU Interconnections. CU dan ALU merupakan fungsi operasionalnya, yaitu CU sebagai pengontrol kerja komputer dan ALU sebagai pusat pengolah data. Sedangkan jalur penghubung antar alat dalam komputer disebut BUS.
Didalam kesempatan ini, saya akan menuliskan sedikit tentang CU, ALU dan BUS. Selamat membaca
1. Control Unit (CU)
Control Unit (CU) merupakan alah 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.
CU mempunyai beberapa tugas, yaitu sebagai berikut :
Mengatur dan mengendalikan alat-alat input dan output.
Mengambil instruksi-instruksi dari memori utama.
Mengambil data dari memori utama kalau diperlukan oleh proses.
Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja.
Menyimpan hasil proses ke memori utama.
CU ada 2 macam, yaitu Single-Cycle CU dan Multi-Cycle CU. Berikut penjelasan dari keduanya
a. Single-Cycle CU
Proses di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satu cycle, maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control line hanya merupakan fungsi dari opcode 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.

b. Multi-Cycle CU
Berbeda dengan unit kontrol yang single-cycle, unit kontrol yang multi-cycle lebih memiliki banyak fungsi. Dengan memperhatikan state dan 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-bit opcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU; bukan instruksi cycle selanjutnya.
2. Arithmetic Logic Unit (ALU)
Arithmatic and Logic Unit (ALU), adalah salah satu bagian/komponen dalam sistem di dalam sistem komputer berfungsi melakukan operasi/perhitungan aritmatika dan logika (seperti penjumlahan, pengurangan dan beberapa logika lain), AlU bekerja besama-sama memori. Dimana 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 output register, sebelum disimpan dalam memori.
Pada saat sekarang ini sebuah chip/IC dapat mempunyai beberapa ALU sekaligus yang memungkinkan untuk melakukan kalkulasi secara paralel. Salah satu chip ALU yang sederhana (terdiri dari 1 buah ALU) adalah IC 74LS382/HC382ALU (TTL). IC ini terdiri dari 20 kaki dan beroperasi dengan 4×2 pin data input (pinA dan pinB) dengan 4 pin keluaran (pinF).
3. Sistem BUS
BUS merupakan lintasan komunikasi yang menghubungkan dua atau lebih komponen komputer. Sifat penting yang sekaligus sebagai syarat utama BUS adalah sebagai media transmisi yang dapat digunakan oleh sejumlah perangkat yang terbungkus padanya. Karena digunakan bersama, diperlukan aturan main agar tidak terjadi tabrakan data atau kerusakan data yang ditransmisikan. Walaupun digunakan bersama, namun
dalam satu waktu hanya ada sebuah perangkat yang dapat menggunkan BUS.
BUS mempunyai beberapa saluran, tetapi secara umum, fungsi BUS dikategorikan menjadi 3 bagian, yaitu saluran data, saluran alamat dan saluran kontrol. Saluran data (data bus) merupakan lintasan bagi perpindahan data antar modul. Umunya jumlah saluran terkait dengan panjang word, misalnya 8,16,32 saluran dengan tujuan agar mentransfer word dalam sekalu waktu. Jumlah saluran dikatakan lebar bus dengan lebar bus dengan satuan bit.
Saluran alamat (address bus) digunakan untuk menspesifikasi sumber dan tujuan data pada bus data. Saluran ini digunakan untuk mengirim alamat word pada memori yang akan diakses CPU. Dan juga digunakan untuk saluran alamt perangkat modul komputer saat CPU mengakses suatu modul. Agar semua peralatan yang terhubung dengan sistem komputer dapat diakses harus memiliki alamat, misal mengakses port I/O maka port I/O harus memiliki alamat hardwarenya.
Saluran kontrol (control bus) digunakan untuk mengontrol bus data, bus alamat dan seluruh modul yang ada. Karena bus data dan bus alamat digunakan oleh semua komponen maka diperlukan suatu mekanisme kerja yang dikontrol melalui bus kontrol. Saluran kontrol meliputi :
MemoryWrite : memerintahkan data pada bus akan dituliskan kedalam lokasi alamat
MemoryRead : memerintahkan data dari lokasi alamat ditempatkab pada bus adata
I/OWrite : memerintahkan data pada bus dikirim ke lokasi port I/O
I/ORead : meemrintahkan data dari port I/O ditempatkan pada bus data
Transfer ACK : menunjukkan data telah diterima dari bus atau data telah ditempatkan pada bus
BusRequest : menunjukkan modul yang melakukan request telah diberi hak mengontrol bus
InterruptRequest : menandakan adanya penangguhan interupsi dari modul.
Interrupt ACK : menunjukkan penangguhan interupsi telah diketahui CPU
Clock : kontrol untuk sinkronisasi operasi antar modul
Reset : digunakan untuk menginisialisasi seluruh modul.

1 komentar: