Minggu, 06 November 2016

CPU

  CPU atau yang biasa kita kenal dengan Central Processing Unit merupakan perangkat keras komputer yang berfungsi untuk menerima dan melaksanakan perintah serta data dari perangkat lunak. Prosesor sering digunakan untuk menyebut CPU pada umumnya. 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.

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 ketik, pemindai, tuas control.

Cara Kerja CPU
Saat data atau instruksi dimasukkan ke processing-devices, pertamakali diletakkan di RAM (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 di 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 Accumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator 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.

Sistem Bus
BUS sistem terdiri dari sejumlah bus yang berlainan yang menyediakan jalan antara dua buah komponen yang menghubungkan komponen-komponen utama komputer (CPU, Memori. I/O). Sistem bus adalah penghubung bagi keseluruhan komponen-komponen dalam menjalankan tugasnya.




Struktur Sistem BUS
  • Saluran data: Saluran data memberikan lintasan bagi perpindahan data antara dua modul sistem. Lebar bus data merupakan faktor penting dalam menentukan kinerja sistem secara keseluruhan.
  • Saluran Alamat: Saluran alamat digunakan untuk menandakan sumber atau tujuan data pada bus data.
  • Saluran Kontrol: Saluran kontrol digunakan untuk mengontrol akses ke saluran alamat dan penggunaan data.

ALU
ALU merupakan bagian dari CPU yang bertugas untuk melakukan operasi aritmatika dan operasi logika berdasar instruksi yang ditentukan. ALU sering di sebut mesin bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit aritmatika dan unit logika boolean yang masing-masing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika (matematika) yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.

Tugas lain dari ALU adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi logika meliputi perbandingan dua operand dengan menggunakan operator logika tertentu, yaitu sama dengan (=), tidak sama dengan (¹ ), kurang dari (<), kurang atau sama dengan (£ ), lebih besar dari (>), dan lebih besar atau sama dengan (³ ).

Unit kontrol (Control Unit)
Unit kontrol adalah bagian dari prosesor yang mampu mengatur jalannya program. Komponen ini terdapat dalam semua CPU. CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja antara komponen dalam menjalankan fungsi-fungsi operasinya. termasuk dalam tanggung jawab unit kontrol adalah mengambil instruksi-instruksi dari memori utama dan menentukan jenis instruksi tersebut. Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU (Aritmathic Logic Unit). Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output. Dengan demikian tugas dari unit kendali ini adalah:
  • Mengatur dan mengendalikan alat-alat input dan output.
  • Mengambil instruksi-instruksi dari memori utama.
  • Mengambil data dari memori utama (jika diperlukan) untuk diproses.
  • Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika.
  • Mengawasi kinerja dari ALU.
  • Menyimpan hasil proses ke memori utama.

Register
Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya di gunakan untuk menyimpan data saat di olah ataupun data untuk pengolahan selanjutnya. jika dianalogikan, register ini dapat diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara manual, sehingga otak dapat diibaratkan sebagai CPU, yang berisi ingatan-ingatan, satuan kendali yang mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.

Daftar Pustaka:
http://muhammadbambangutama.blogspot.co.id/2015/12/central-processing-unit-cpu.html
https://randyeza23.wordpress.com/2016/01/01/central-processing-unit-cpu/


Sabtu, 05 November 2016

Arsitektur Set Instruksi

   Set instruksi adalah sekumpulan lengkap instruksi yang dapat dimengerti oleh CPU, set instruksi sering juga disebut bahasa mesin karena aslinya juga berbentuk biner kemudian dimengerti sebagai bahasa assembly untuk dimengerti manusia (programmer), biasanya digunakan representasi yang lebih mudah dimengerti oleh manusia. sebuah instruksi terdiri dari sebuah opcode, biasanya bersama dengan beberapa informasi tambahan seperti darimana asal operand-operand dan kemana hasil akan ditempatkan. set instruksi merupakan jenis instruksi teknik pengalamatan, system bust, CPU dan I/O set instruksi mode & format pengalamatan.

Jenis Instruksi
  • Data Processing: Arithmetic dan Logic Instructions
  • Data Storage: Memory Instructions
  • Data Movement: I/O Instructions
  • Control: Test and Branch Instructions

Teknik Pengalamatan
              Mode pengalamatan merujuk pada bagaimana pemrograman mengalamati suatu lokasi memori. setiap mode pengalamatan memberikan fleksibilitas khusus yang sangat penting. mode pengalamatan ini meliputi immediate addressing, direct addressing, dan indirect addressing.

  • Immediate Addressing
Mode pengalamatan immediate addressing sangat umum dipakai karena harga yang akan disimpan dalam memori langsung mengikuti kode operasi dalam memori. dengan kata lain, tidak diperlukan pengambilan harga dari alamat lain untuk disimpan. contohnya: MOV A,#20h. dalam instruksi tersebut, akumulator akan diisi dengan harga yang langsung mengikutinya, dalam hal ini 20h. mode ini sangatlah cepat karena harga yang dipakai langsung tersedia.

  • Direct Addressing
Dalam mode pengalamatan direct addressing, harga yang akan dipakai diambil langsung dalam alamat memori lain. contohnya: MOV A,30h. dalam instruksi ini akan dibaca data dari RAM internal dengan alamat 30h dan kemudian disimpan dalam akumulator. mode pengalamatan ini cukup cepat, meskipun harga yang didapat tidak langsung seperti immediate, namun cukup cepat karena disimpan dalam RAM internal. demikian pula akan lebih mudah menggunakan mode ini daripada mode immediate karena harga yang didapat bisa dari lokasi memori yang mungkin variable.

  • Indirect Addressing
Mode pengalamatan indirect addressing sangat berguna karena dapat memberikan fleksibilitas tinggi dalam mengalamati suatu harga. mode ini merupakan satu-satunya cara untuk mengakses 128 byte lebih dari RAM internal pada keluarga 8052. contoh: MOV A,@R0. Dalam instruksi tersebut, 89C51 akan mengambil harga yang berada pada alamat memori yang ditunjukkan oleh isi dari R0 dan kemudian mengisikannya ke akumulator.

Desain Set Instruksi
Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
  • Kelengkapan set instruksi
  • Ortogonalitas (sifat independens instruksi)
  • Kompatibilitas: Source Code Compatibility, Object Code Compatibility.

Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut:
  • Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya
  • Data Types: Tipe atau jenis data yang dapat diolah Instruction Format: Panjangnya, banyaknya alamat, dsb.
  • Register: Banyaknya register yang dapat digunakan.
  • Addressing: Mode pengalamatan untuk operand.


Daftar pustaka: