Minggu, 21 Desember 2014

TUGAS 4 CPU (SISTEM BUS DAN ALU)


  CPU
Pengertian CPU
CPU merupakan singkatan dari Central Prosessor Unit yang sering diartikan oleh manusia sebagai tubuh maupun dari otak sikomputer.
Selain dapat mengolah berbagai hitungan Aritmatika, CPU juga dapat mengolah data-data yang telah masuk kedalam komputer dan menyimpannya kedalam hardisk maupun alat penyimpanan lainnya melalui perintah prosessor yang ada di CPU. CPU sendiri terbuat dari lempengan yang berbahan silicon yang terdiri atas 10 juta transitor yang biasa disebut “chip”. Perkembangan CPU dari waktu ke waktu semakin meningkat. Awal munculnya processor, yakni hadir dengan microprocessornya yang di buat oleh INTEL, satu-satunya produsen pada masa itu untuk pembuatan processor. Namun, sekarang ini sudah banyak perusahaan-perusahaan yang membuat processor.

bagian-bagian CPU dan Fungsi-funsinya
Perangkat pengolah atau pemroses data dalam komputer adalah prosesor atau lengkapnya adalah mikroprosesor, namun umumnya pengguna komputer menyebutnya sebagai CPU (Central Processor Unit). CPU merupakan otak bagi sebuah system komputer. CPU memiliki 3 komponen utama yang merupakan bagian tugas utamanya yaitu unit kendali (Control Unit – CU) , unit aritmetika dan logika (Aritmetic and Logic Unit – ALU) serta komponen register yang berfungsi membantu melakukan hubungan (interface) dari dan ke memori. Tugas CPU adalah melaksanakan dan mengawal keseluruhan operasi komputer sehingga bisa dikatakan hampir keseluruhan pemikiran dilaksanakan disini, sehingga sering dinamakan sebagai otak komputer. CPU Tempatnya terletak pada papan induk (motherboard) pada bagian inilah juga terletak segala pusat perangkat komputer seperti memori, port input –output (I/O) dan sebagainya.


PENGERTIAN BUS DAN SISTEM BUS
Bus merupakan lintasan komunikasi yang menghubungkan dua atau lebih perangkat komputer. Karakteristik penting sebuah bus adalah bahwa 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 dua 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.
Umumnya sebuah bus terdiri dari sejumlah lintasan komunikasi atau saluran. Masing-masing saluran dapat mentransmisikan sinyal yang menunjukkan biner 1 dan biner 0. Serangkaian digit biner dapat ditransmisikan melalui saluran tunggal. Dengan mengumpulkan beberapa saluran dari sebuah bus, dapat digunakan mentransmisikan digit biner secra bersamaan (paralel). Misalnya sebuah satuan data 8 bit dapat ditransmisikan melalui bus delapan saluran.
Sistem komputer terdiri dari sejumlah bus yang berlainan yang menyediakan jalan antara dua buah komponen pada bermacam-macam tingkatan hirarki sisterm komputer. Sebuah bus yang menghubungkan komponen-komponen utama komputer (CPU, memori, input/output) disebut bus sistem. Struktur interkoneksi komputer yang umum didasarkan pada penggunaan satu bus sistem atau lebih.

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.

A. 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, 32 saluran, jumlah saluran diakitakan denang 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. 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.

B. 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/outoput. Biasanya, bit-bit berorde lebih tinggi dipakai untuk memilih lokasi memori atau port I/O pada modul.

C. Saluran Kontrol
Saluran kontrol digunakan untuk mengntrol akses ke saluran alamat dan penggunaan data dan saluran alamat. 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, transfer ACK, bus request, bus grant, interrupt request, interrupt ACK, clock, reset.


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



SUMBER :
http://id.wikipedia.org/wiki/ALU
http://id.scribd.com/doc/137705503/Pengertian-ALU
http://bebexztaja.blogspot.com/2012/04/fungsi-bus-penjelasan-data-bus-address.html 


TUGAS 4 ARSITEKTUR SET INSTRUKSI

Set instruksi (instruction set) adalah sekumpulan lengkap instruksi yang dapat di mengerti oleh sebuah CPU, set instruksi sering juga disebut sebagai bahasa mesin (machine code), karna aslinya juga berbentuk biner kemudian dimengerti sebagai bahasa assembly, untuk konsumsi 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-hasil akan ditempatkan. Subyek umum untuk menspesifikasikan di mana operand-operand berada (yaitu, alamat-alamatnya) disebut pengalamatan.

Pada beberapa mesin, semua instruksi memiliki panjang yang sama, pada mesin-mesin yang lain mungkin terdapat banyak panjang berbeda. Instruksi-instruksi mungkin lebih pendek dari, memiliki panjang yang sama seperti, atau lebih panjang dari panjang word. Membuat semua instruksi memiliki panjang yang sama lebih muda dilakukan dan membuat pengkodean lebih mudah tetapi sering memboroskan ruang, karena semua instruksi dengan demikian harus sama panjang seperti instruksi yang paling panjang.
Di dalam sebuah instruksi terdapat beberapa elemen-elemen instruksi yaitu:
  1. Operation code (op code)
  2. Source operand reference
  3. Result operand reference
  4. Xext instruction preference

Karakteristik dan Fungsi set instruksi
  • Operasi dari CPU ditentukan oleh instruksi-instruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (mechine instructions) atau instruksi komputer (computer instruction).
  • Kumpulan dari instruksi-instruksi yang berbeda yang dapat dijalankan oleh CPU disebut set instruksi (instruction set)

Perbandingan set instruksi

Beberapa computer CISC (Complex Instruction Set Computer) menggunakan cara implist dalam menentukan mode addressing pada setiap set instruksinya. Penentuan mode addressing dengan cara implicit memiliki arti bahwa pada set instruksi tidak di ada bagian yang menyatakan tipe dari mode addressing yang digunakan, deklarasi dari mode addressing itu berada menyatu dengan opcode. Lain hal nya dengan cara imsplisit, cara eksplisit sengaja menyediakan tempat pada set instruksi untuk mendeklarasikan tipe mode addressing. Pada cara eksplisit deklarasi opcode dan mode addressing berada terpisah.
Data pada tempat deklarasi mode addressing diperoleh dari logaritma basis dua jumlah mode addressing. Jika deklarasi mode addressing dilakukan secara implicit akan menghemat tempat dalam set instruksi paling tidak satu bit untuk IBM 3090 dan 6 bit untuk MC68040. Perubahan satu bit pada set instruksi akan memberikan jangkauan alamat memori lebih luas mengingat range memori dinyatakan oleh bilangan berpangkat dua.
  
Elemen-elemen dari intruksi mesin (set instruksi)

* Operation Code (opcode) : menentukan operasi yang akan dilaksanakan
* Source Operand Reference : merupakan input bagi operasi yang akan dilaksanakan
* Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan
* Next instruction Reference : memberitahu CPU untuk mengambil (fetch) instruksi berikutnya setelah instruksi yang dijalankan selesai. Source dan result operands dapat berupa salah satu diantara tiga jenis berikut ini:
  • Main or Virtual Memory
  • CPU Register
  • I/O Device


Arithmetic

Tindakan CPU untuk melakukan operasi arithmetic : 
Transfer data sebelum atau sesudah. 
Melakukan fungsi dalam ALU. 
Menset kode-kode kondisi dan flag. 

Operasi set instruksi untuk arithmetic :
1. ADD : penjumlahan 5. ABSOLUTE
2. SUBTRACT : pengurangan 6. NEGATIVE
3. MULTIPLY : perkalian 7. DECREMENT
4. DIVIDE : pembagian 8. INCREMENT
Nomor 5 sampai 8 merupakan instruksi operand tunggal. LOGICAL

* Tindakan CPU sama dengan arithmetic
* Operasi set instruksi untuk operasi logical :
1. AND, OR, NOT, EXOR
2. COMPARE : melakukan perbandingan logika.
3. TEST : menguji kondisi tertentu.
4. SHIFT : operand menggeser ke kiri atau kanan menyebabkan konstanta pada ujung bit.
5. ROTATE : operand menggeser ke kiri atau ke kanan dengan ujung yang terjalin. 

Transfer Data 
 A. Menetapkan lokasi operand sumber dan operand tujuan.
 B. Lokasi-lokasi tersebut dapat berupa memori, register atau bagian paling atas daripada stack.
 C. Menetapkan panjang data yang dipindahkan.
 D. Menetapkan mode pengalamatan.
 E. Tindakan CPU untuk melakukan transfer data adalah :
    a. Memindahkan data dari satu lokasi ke lokasi lain.
    b. Apabila memori dilibatkan :
          1. Menetapkan alamat memori.
          2. Menjalankan transformasi alamat memori virtual ke alamat memori aktual.
          3. Mengawali pembacaan / penulisan memori

Operasi set instruksi untuk transfer data : 
  • MOVE : memindahkan word atau blok dari sumber ke tujuan
  • STORE : memindahkan word dari prosesor ke memori.
  • LOAD : memindahkan word dari memori ke prosesor.
  • EXCHANGE : menukar isi sumber ke tujuan.
  • CLEAR / RESET : memindahkan word 0 ke tujuan.
  • SET : memindahkan word 1 ke tujuan.
  • PUSH : memindahkan word dari sumber ke bagian paling atas stack.
  • POP : memindahkan word dari bagian paling atas sumber

Desain set instruksi
Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah :
  • Kelengkapan set instruksi
  • Ortogonalitas (sifat independensi)
  • Kompabilitas (source code compatibility dan object code compatibility).
Selain melibatkan ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut :
  • Operation repertoire: berapa banyak dan operasi apa saja yang disediakan, banyaknya alamat, dsb.
  • Data types: tipe/jenis data yang dapat olah instruction format: panjangnya, banyak alamat, dsb.
  • Register: banyaknya register yang dapat digunakan.
  • Addressing: mode pengalamatan untuk operand.
Format instruksi
Suatu instruksi terdiri dari beberapa field yang sesuai dengan elemen dalam instruksi tersebut. Layout dari suatu instruksi sering disebut sebagai Format Instruksi (Instruction Format).

Jenis-Jenis Operand
* Addresses (akan dibahas pada addressing modes)
* Numbers : – Integer or fixed point – Floating point – Decimal (BCD)
* Characters : – ASCII – EBCDIC
* Logical Data : Bila data berbentuk binary: 0 dan 1


SUMBER :
http://id.wikipedia.org/wiki/Set_instruksi
http://www.slideshare.net/Henniheny/set-instruksi-27850098