CPU ( ALU, set register, memory, sistem bus )

1. CPU ( Central Processing Unit )

     1.1 Pengertian CPU

          CPU ( Central Processing Unit ) secara umum juga diartikan sebagai komponen utama atau otak utama dari sebuah perangkat seperti komputer maupun smartphone yang masuk dalam kategori hardware dengan kemampuan melaksanakan perintah, instruksi, dan seluruh aktivitas baik dengan bahasa aritmatika, output serta input secara keseluruhan dalam sebuah sistem di perangkat tersebut. Kecepatan eksekusi processor tergantung pada frekuensinya, satuannya adalah MHz ( Mega Hertz ) atau GHz ( Giga Hertz, dimana 1 GHz = 1000 MHz ).

     1.2 Cara Kerja CPU

          Saat data dan atau instruksi dimasukkan ke Processing-devices, pertama sekali diletakkan di MAA ( melalui Input-storage ), apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage. Jika register siap untuk menerima pengerjaan eksekusi, maka Control  Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter. Sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register ( dalam hal ini Operand-register )

          Jika berdasar instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di akumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di akumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage hasil pengolahan akan ditampilkan ke Output Devices.

     1.3 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 beberapa perangkat keras, seperti papan tombol, pemindai, tuas kontrol, maupun mouse. CPU dikontrol menggunakan sekumpulan instruksi perangkat lunak komputer. Perangkat lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media penyimpanan, seperti cakram kertas, disket, cakram padat, maupun pita perekam. Instruksi - instruksi tersebut kemudian disimpan terlebih dahulu pada memori fisik ( MAA ), yang mana setiap instruksi akan diberi alamat unik yang disebut alamat memori. Selanjutnya, CPU dapat mengakses data - data pada MAA dengan menentukan alamat data yang dikehendaki.

          Saat sebuah program dieksekusi, data mengalir dari RAM ke sebuah unit yang disebut dengan bus, yang menghubungkan antara CPU dengan MAA. Data kemudian di dekode dengan menggunakan unit proses yang disebut sebagai pendekoder instruksi yang sanggup menerjemahkan instruksi. Data kemudian berjalan ke unit aritmatika dan logika ( ALU ) yang melakukan kalkulasi dan perbandingan. Data bisa jadi disimpan sementara oleh ALU dalam sebuah lokasi memori yang disebut dengan register supaya dapat diambil kembali dengan cepat untuk diolah. ALU dapat melakukan operasi - operasi tertentu, meliputi penjumlahan, pengurangan, perkalian, pengujian kondisi terhadap data dalam register, hingga mengirimkan hasil pemrosesannya ke memori fisik, media penyimpanan, atau register apabila akan mengolah hasil pemrosesan lagi. Selama proses ini terjadi, sebuah unit dalam CPU yang disebut dengan penghitung program akan memantau instruksi yang sukses dijalankan supaya instruksi tersebut dapat dieksekusi dengan urutan yang benar dan sesuai.

     1.4 Komponen CPU




          Dalam mewujudkan fungsi dan tugasnya, CPU tersusun atas beberapa komponen, yaitu :

a. Arithmatic Logic Unit ( ALU )

          Arithmatic Logic Unit 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. Seperti istilahnya, ALU terdiri dari dua bagian utama, yaitu unit aritmatika dan unit logika boolean, yang masing - masing memiliki spesifikasi 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 Arithmatic ), dan lain - lain.

          Arithmatic Logic 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 dikenal dengan nama Arithmatic Logic 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 kompleks seperti perintah ADD untuk menambahkan bilangan, atau DEVIDE untu pembagian dari suatu bilangan. Selain perintah atematika yang lebih kompleks, 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 Bahasa Indonesia, atau dengan bahasa lainnya, begitu juga dengan instruction ser yang ada pada mesin, tergantung dimana lingkungan instruction set itu digunakan.

b. Control Unit ( CU )

          Control Unit ( CU ) bertugas mengontrol operasi CPU dan secara keseluruhan mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi - fungsi operasinya. Termasuk dalam tanggung jawab unit kontrol adalah mengambil instruksi - instruksi dari memori utama dan menentukan jenis instruksi tersebut.

          Pada awal - awal desain komputer, CU diimplementasikan sebagai sebuah mikroprogram yang disimpan di dalam tempat penyimpanan kontrol ( Control Store ). Beberapa word dari mikroprogram dipilih oleh microsequencer dan bit yang datang dari word - word tersebut akan secara langsung mengontrol bagian - bagian berbeda dari perangkat tersebut, termasuk diantaranya adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing - masing dengan CU sebagai pemantaunya ( Supervisor ). Control Unit ( CU ) juga berfungsi untuk bersinkronasi antar komponen. Tugas dari CU adalah sebagai berikut :

   a) Mengatur dan mengendalikan alat - alat input dan output
   b) Mengambil instruksi - instruksi dari memori utama
   c) Mengambil data dari memori utama kalau diperlukan oleh proses
   d) Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika
   e) Menyimpan hasil proses ke memori utama
Selain memiliki tugas dan fungsi, control unit juga dibedakan menjadi 2 macam, yaitu :

a) Single-Cycle CU

          Proses di CU 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 empat macam instruksi, yaitu "R-format" untuk berhubungan dengan register, "lw" untuk membaca memori, "sw" untuk menulis ke memori, dan "beq" untuk branching. Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori "R-format" atau "lw" maka 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 istruksi cycle selanjutnya.

c. Register

          Register adalah media penyimpan internal CPU yang digunakan saat proses pengolahan data. Memori ini bersifat sementara, biasanya digunakan untuk menyimpan data saat diolah ataupun data untuk pengolahan selanjutnya. Jika dianalogikan, register ini dapat diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara manual, sehingga otak bisa diibaratkan sebagai CPU, yang berisi ingatan - ingatan, suatu kendali yang mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.

          Register prosesor berdiri pada tingkat tertinggi dalam hierarki memori ini berarti bahwa kecepatannya adalah yang paling cepat, kapasitasnya yang paling kecil, dan harga tiap bit nya paling tinggi. Register juga digunakan sebagai cara yang paling cepat dalam sistem komputer untuk melakukan manipulasi data. Register umumnya diukur dengan satuan bit yang dapat ditampung olehnya, seperti register 8 bit, register 16 bit, register 32 bit, register 64 bit, dan lain - lain.

          Istilah register saat ini dapat merujuk kepada kumpulan register yang dapat diindeks secara langsung untuk melakukan input/output terhadap sebuah instruksi yang didefinisikan oleh set instruksi. Untuk istilah ini, digunakanlah kata register arsitektur. Sebagai contoh set instruksi Intel x86 mendefinisikan sekumpulan delapan buah register dengan ukuran 32 bit, tetapi CPU yang mengimplementasikan set instruksi x86 dapat mengandung lebih dari delapan register 32 bit.

a) Set Register

          Apabila bit ini bernilai 0, maka register data dapat diupdate setiap detiknya, namun apabila bit ini bernilai 1, maka register data tidak dapat diupdate. Bit ini tidak akan berpengaruh terhadap kondisi reset.

b) Register - Register Kontrol

          Register - register untuk komunikasi dengan unit - unit diluar CPU :

MAR ( Memory Address Register ), digunakan untuk menyatakan alamat lokasi operand dalam memori yang akan dibaca atau ditulis oleh CPU
MBR / MDR ( Memory Buffer atau Data Register ), digunakan untuk tempat penyimpanan data sementara yang baru saja dibaca atau yang akan ditulis ke memori
PC ( Program Counter ), digunakan untuk menyatakan alamat lokasi instruksi yang akan dibaca oleh CPU dari memori
Jenis - jenis register :


Register data, digunakan untuk menyimpan angka - angka dalam bilangan bulat ( Integer )
Register alamat, digunakan untuk menyimpan alamat - alamat memori dan juga untuk mengakses memori
Register general purpose, digunakan untuk menyimpan angka dan alamat secara sekaligus
Register floating point, digunakan untuk menyimpan angka - angka bilangan titik mengambang ( Floating Point )
Register konstanta, digunakan untuk menyimpan angka - angka tetap yang hanya dapat dibaca ( bersifat read-only )
Register vector, digunakan untuk menyimpan hasil pemrosesan vektor yang dilakukan oleh prosesor SIMD
Register special purpose, digunakan untuk menyimpan data internal prosesor seperti halnya instruction pointer, stack pointer, dan status
Register yang spesifik terhadap model mesin, digunakan untuk menyimpan data internal prosesor atau pengaturan yang berkaitan dengan prosesor itu sendiri.

d. Memori

          Memori merupakan bagian dari komputer yang berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik - baiknya. Memori biasanya disebut juga dengan istilah computer storage, computer memory atau memory. Memori merupakan piranti komputer yang digunakan sebagai media penyimpanan data dan informasi saat menggunakan komputer. Memori merupakan bagian yang penting dalam komputer modern dan letaknya di dalam CPU. Sebagian besar komputer memiliki hierarki memori yang terdiri atas tiga level, yaitu :


Physical Register di CPU, berada di level teratas. Informasi yang berada di register dapat diakses dalam satu clock cycle CPU
Primary Memory Executable Memory ), berada di level tengah. Contohnya RAM. Memori ini diukur dengan satu byte dalam satu waktu, secara relatif dapat diakses dengan cepat, dan bersifat volatile ( informasi bisa hilang ketika komputer dimatikan ). CPU mengakses memori ini dengan instruksi single load dan store dalam beberapa clock cycle
Secondary Memory, berada di level bawah. Contohnya disk atau tape. Memori ini diukur sebagai kumpulan dari bytes, waktu aksesnya lambat, dan bersifat non volatile ( informasi tetap tersimpan ketika komputer dimatikan ). Memori ini diterapkan di storage device, jadi akses meliputi aksi oleh driver dan device.
          Memori merupakan media penyimpanan data pada komputer, yang mana media penyimpanan data dalam komputer dibedakan menjadi 2 jenis, yaitu :

a. Memori Internal

          Memori jenis ini dapat diakses secara langsung oleh prosesor. Memori internal memiliki fungsi sebagai pengingat. Dalam hal ini yang disimpan di dalam memori utama dapat berupa data atau program. Memori internal dibedakan menjadi beberapa macam, yaitu :
     a) ROM ( Read Only Memory )

          ROM adalah jenis memori yang isinya tidak hilang ketika tidak mendapatkan aliran listrik dan pada awalnya isinya hanya bisa dibaca. ROM pada komputer disediakan oleh vendor komputer dan berisi program atau data. Di dalam PC, ROM biasa disebut BIOS ( Basic Input/Output System ) atau ROM-BIOS.

     b) CMOS ( Complementary Meta-Oxyde Semiconductor )

          CMOS adalah jenis chip yang memerlukan daya listrik dari baterai. Chip ini berisi memori 64 byte yang isinya dapat diganti. Pada CMOS inilah berbagai pengaturan dasar komputer dilakukan, misalnya piranti yang digunakan untuk memuat sistem operasi dan termasuk pula tanggal dan jam sistem.

     c) RAM ( Random Access Memory )

          RAM adalah jenis memori yang isinya dapat diganti - ganti selama komputer dihidupkan dan bersifat volatile. Selain itu, RAM mempunyai sifat yakni dapat menyimpan dan mengambil data dengan sangat cepat.

     d) DRAM ( Dynamic RAM )

          DRAM adalah jenis RAM yang secara berkala harus disegarkan oleh CPU agar data yang terkandung didalamnya tidak hilang. DRAM merupakan salah satu tipe RAM yang terdapat di dalam PC.

     e) SDRAM ( Synchronous Dynamis RAM )

          SDRAM adalah jenis RAM yang merupakan kelanjutan dari DRAM namun telah disinkronisasi oleh clock sistem dan memiliki kecepatan lebih tinggi daripada DRAM. Cocok untuk sistem dengan bus yang memiliki kecepatan sampai 100 MHz.

     f) Cache Memory

          Cache memory merupakan memori berkapasitas terbatas, memori ini berkecepatan tingi dan lebih mahal dibandingkan memori utama. Berada diantara memori utama dan register pemroses, berfungsi agar pemroses tidak langsung mengacu kepada memori utama tetapi di cache memory yang kecepatan aksesnya yang lebih tinggi, metode menggunakan cache memory ini akan meningkatkan kinerja sistem. Cache memory adalah tipe RAM tercepat yang ada, dan digunakan oleh CPU, hard drive, dan beberapa komponen lainnya.

b. Memori Eksternal

          Memori eksternal merupakan memori tambahan yang berfungsi untuk menyimpan data atau progam. Contohnya adalah hardisk, floppy disk, dan lain - lain. Hubungan antara chace memory, memori utama, dan konsep dasar memori eksternal yaitu menyimpan data bersifat tetap ( non volatile ), baik pada saat komputer aktif atau tidak. Memori eksternal yaitu perangkat keras untuk melakukan operasi penulisan, pembacaan, dan penyimpanan data di luar memori utama. Memori eksternal mempunyai dua tujuan utama yaitu sebagai penyimpanan permanen untuk membantu fungsi RAM dan yang kedua untuk mendapatkan memori murah dengan kapasitas yang tinggi bagi penggunaan jangka panjang.

2. Sistem Bus


          Sistem bus dalam arsitektur komputer merujuk pada bus yang digunakan oleh sistem komputer untuk menghubungkan semua komponennya dalam menjalankan tugasnya. Sebuah bus adalah sebutan untuk jalur dimana data dapat mengalir dalam komputer. Jalur - jalur ini digunakan untuk komunikasi dan dapat dibuat antara dua elemen atau lebih. Data atau program yang tersimpan dalam memori dapat diakses dan dieksekusi oleh CPU melalui perantara sistem bus

          Bus beroperasi pada kecepatan dan lebar yang berbeda. PC awal mempunyai bus dengan kecepatan 4.77 MHz dan lebar 8 bit yang dikenal dengan bus ISA ( Industry Standart Architecture ). Kemudian bus diperbaiki menjadi lebar 16 bit dengan kecepatan 8 MHz. Pada tahun 1990 Intel memperkenalkan bus PCI ( Pheripheral Component Interconnect ), semula dengan lebar 32 bit, sekarang lebar bus 64 bit dan di run pada kecepatan 133 MHz. Sebuah bus yang menghubungkan komponen - komponen utama komputer disebut sebagai Bus System. Biasanya sebuah sistem bus terdiri dari 50 hingga 100 saluran yang terpisah. Sistem bus dibedakan menjadi beberapa jenis, yaitu :

     a) Data Bus ( Saluran Data )

          Saluran data memberikan lintasan bagi perpindahan data antara dua modul sistem. Saluran ini secara kolektif disebut bus data. Umumnya bus data terdiri dari 8, 16, dan 32 saluran. Jumlah saluran diaktifkan dengan lebar bus data. Karena pada suatu saat tertentu masing - masing saluran hanya dapat membawa 1 bit, maka jumlah saluran menentukan jumlah bit yang dapat dipindahkan pada suatu saat. Lebar bus data merupakan faktor penting dalam menentukan kinerja sistem secara keseluruhan. Contonya bila bus data lebarnya 8 bit dan setiap instruksi panjangnya 16 bit, maka CPU harus dua kali mengakses modul memori dalam setiap instruksinya.

     b) Address Bus ( Saluran Alamat )

          Saluran alamat digunakan untuk menandakan sumber atau tujuan data pada bus data. 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. Selain itu, umumnya saluran alamat juga dipakai untuk mengalamati port - port input/output. Biasanya, bit - bit berorde lebih tinggi dipakai untuk memilih lokasi memori atau port I/O pada modul. Digunakan untuk menspesifikasi sumber dan tujuan data pada bus data, untuk mengirim alamat word pada memori yang akan diakses CPU, dan untuk saluran alamat perangkat modul komputer saat CPU mengakses suatu modul dan semua peralatan yang terhubung dengan sistem komputer, agar dapat diakses harus memiliki alamat.

     c) Control Bus ( Saluran Kendali )

          Saluran kontrol digunakan untuk mengontrol akses ke saluran alamat dan penggunaan data. 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 menspesifikasikan operasi - operasi yang akan dibentuk. Umumnya saluran kontrol meliputi : memory write, memory read, I/O write, I/O read, transfer ACK, bus request, bus grant, interrupt request, interrupt ACK, clock, reset.


sumber :
 
http://siswantongeblog.blogspot.co.id/2015/10/sistem-bus.html

https://id.wikipedia.org/wiki/Unit_Pemroses_Sentralhttp://www.sridianti.com/pengertian-cpu-fungsi-dan-bagian.htmlhttp://delianadestisera31.blogspot.com/2017/10/cpu-dan-sistem-bus.html

Comments

Popular posts from this blog

Encoder-Decoder & Multiplexer-Demultiplexer | Rangkaian Logika

PERAN TEKNOLOGI ENERGI TERBARUKAN UNTUK MASYARAKAT