Kamis, 09 Juli 2009

4 tahapan Pipelining


Pipeline:
1.Fetch (mengambil)
2.Decode ( membaca sandi)
3.Execute ( menjalankan )
4.Write-back (menulis balik )
Abu-abu atas kotak daftar tunggu instruksi yang akan dilaksanakan; bagian bawah kotak abu-abu adalah daftar instruksi yang telah selesai, dan tengah kotak putih adalah pipa.

Referensi: www.wikipedia.org

Kesulitan pada Pipelining

:: Kesulitan ::

Banyak desain termasuk Pipelines selama 7, 10 dan 20 tahapan (seperti pada Intel Pentium 4) yang kemudian "Prescott" dan "Cedar Mill" core Pentium 4 (dan Pentium D derivatif) memiliki 31-tahap pipa, maka lama di konsumen utama komputasi.Xelerator X10q yang memiliki pipa lebih dari seribu tahapan panjang The downside dari panjang pipa adalah bahwa ketika sebuah program cabang, prosesor tidak bisa tahu di mana untuk mengambil instruksi berikutnya dari dan harus menunggu sampai cabang instruksi untuk menyelesaikan, meninggalkan pipa belakangnya kosong .Dalam kasus yang ekstrim, performa dari prosesor pipelined pendekatan yang dapat secara teoritis yang un-pipelined prosesor, atau bahkan sedikit lebih buruk jika semua kecuali satu pipa tahapan yang menganggur dan kecil overhead yang hadir antara tahap. Cabang prediksi mencoba untuk meringankan masalah ini oleh guessing apakah cabang akan diambil atau tidak, dan eksekusi spekulatif kode jalur yang memprediksi akan diambil .Jika prediksi ini betul, cabang prediksi untuk menghindari hukuman yang terkait dengan percabangan.Namun, cabang prediksi itu sendiri bisa jadi masalah exacerbating jika cabang prediksi buruk, sebagai salah kode jalur yang telah mulai eksekusi harus bersemangat dari pipa sebelum melanjutkan eksekusi di lokasi yang benar.

Dalam beberapa aplikasi, seperti supercomputing, program-program yang ditulis secara khusus untuk cabang jarang dan sangat panjang Pipelines dapat mempercepat penghitungan dengan mengurangi siklus waktu. Percabangan jika terus terjadi, kembali memesan cabang yang seperti itu yang lebih mungkin diperlukan petunjuk yang ditempatkan ke dalam pipa secara signifikan dapat mengurangi kerugian yang berhubungan dengan kecepatan yang gagal untuk flush cabang. Program seperti gcov dapat digunakan untuk meneliti seberapa sering cabang-cabang tertentu yang benar-benar dijalankan dengan menggunakan teknik yang dikenal sebagai cakupan analisis, namun seperti analisis yang sering jalan terakhir untuk optimasi. Karena adanya instruksi pipa, kode prosesor beban yang tidak akan segera dijalankan.Karena ini, dalam pembaruan kode sangat dekat dengan lokasi pelaksanaan sekarang mungkin tidak akan berpengaruh karena mereka sudah dimuat ke dalam Prefetch Input Antrian. instruksi tersembunyi membuat fenomena ini bahkan lebih parah lagi. Ini hanya relevan untuk cukup memodifikasi kode.

Referensi: www.wikipedia.org

Kelebihan dan Kekurangan Pipelining

:: Kelebihan dan Kekurangan Pipelining ::

- Kelebihan
1.siklus waktu dalam prosesor berkurang, sehingga secara umum menilai instruksi-isu
2.kombinasi beberapa sirkuit seperti adders atau multipliers dapat dibuat lebih cepat dengan menambahkan lebih circuitry. Jika pipelining digunakan sebagai gantinya,ia dapat menyimpan circuity melawan yang lebih kompleks atas kombinasi sirkuit.

-Kekurangan
1. Mencegah penundaan cabang ini (berlaku, setiap cabang yang tertunda) dan masalah dengan serial instruksi yang dijalankan secara bersamaan,akibatnya desain yang lebih sederhana dan murah untuk produksi.
2.Instruksi yang tersembunyi pada prosesor non pipelining tersebut sedikit lebih rendah daripada di pipelining yang setara. Hal ini disebabkan oleh kenyataan bahwa tiba-tiba harus ditambahkan ke jalur data dari prosesor pipelined
3.prosesor non pipelining akan ada instruksi bandwith yang stabil. Kinerja prosesor pipelined sangat sulit untuk memprediksi dan dapat bervariasi secara lebih luas di antara berbagai program.
Contoh:
instruksi khas untuk menambahkan dua nomor mungkin ADD A, B, C yang menambahkan nilai memori ditemukan di lokasi A dan B, dan kemudian menyerahkan hasil di lokasi memori C. sebuah prosesor pipelining yang akan merusak ini menjadi serangkaian tugas yang mirip dengan:
LOAD R1, A Load R1, A
LOAD R2, B Load R2, B
ADD R3, R1, R2 ADD R3, R1, R2
STORE C, R3 MALING C, R3
LOAD next instruction

Nilai-nilai yang disimpan dalam lokasi memori berlabel 'A' dan 'B' yang dimuat (disalin) ke dalam register R1 dan R2, kemudian ditambahkan, dan hasilnya (yang mendaftar di R3) yang disimpan dalam lokasi memori berlabel 'C'.
Dalam contoh ini adalah pipa yang panjang memliki tiga tahapan, memuat ,menjalankan, dan menyimpan. Setiap langkah-langkah itu yang disebut pipa tahap.(tahap pipeline)
Pada prosesor non pipeline, hanya satu tahap dapat bekerja pada suatu waktu sehingga seluruh instruksi yang lengkap sebelum instruksi berikutnya dapat dimulai.Jadi, saat ini adalah instruksi di jalankan tahap kedua instruksi akan berada pada tahap membaca sandi dan instruksi 3. Akan mengambil pada tahap.
Pipelining tidak mengurangi waktu yang diperlukan untuk menyelesaikan sebuah instruksi itu bukan kenaikan jumlah instruksi yang dapat diproses dan sekaligus mengurangi penundaan antara selesai petunjuk disebut 'throughput'.Semakin banyak pipa tahapan yang memiliki prosesor, semakin banyak instruksi yang dapat bekerja pada sekaligus dan kurang dari keterlambatan ada antara petunjuk selesai.Setiap hari ini menggunakan microprocessor diproduksi sekurang-kurangnya 2 tahapan pipa. setiap tahap memiliki 2 pipa. Prosesor Intel Pentium 4 ada 20 tahap Pipelines.
pseudo-kode assembly listing yang akan dilaksanakan:
LOAD A, #40 ; load 40 in A
MOVE B, A ; copy A in B
ADD B, #20 ; add 20 to B
STORE 0x300, B ; store B into memory cell 0x300

Beban instruksi yang ada di tahap menyimpan, di mana hasil-nya (nomor 40) akan disimpan dalam register A. Sementara itu, MOVE instruksi yang sedang dijalankan. Karena harus memindahkan isi dari A ke B, harus menunggu sampai yang memuat instruksi.

instruksi menyimpan adalah yang diambil, sementara MOVE adalah instruksi finishing off dan ADD adalah menghitung
Perlu diketahui bahwa, kadang-kadang, suatu instruksi akan tergantung pada hasil yang lain (seperti contoh kami MOVE)
Bila lebih dari satu instruksi referensi lokasi tertentu untuk operand, baik membacanya (sebagai masukan) atau menulis itu (sebagai output), yang menjalankan instruksi di dalam urutan yang berbeda dari program yang asli agar dapat mengakibatkan bahaya (yang disebutkan di atas)
Ada beberapa teknik yang didirikan untuk mencegah bahaya baik dari terjadi, atau bekerja di sekitar mereka jika mereka melakukan.

Referensi: www.wikipedia.org

Konsep Pipelining

:: Konsep Pipeline ::

Dalam bentuk konsep yang sederhana sirkulasi pipeline rotary dari seluruh register prosesor mengitari cincin. Data register mengalir disekitar cincin ini, nilai-nilai yang memeriksa berbagai fungsi dan dimasukkan hasil unit. Registers tidak disimpan dalam langkah kunci walaupun mereka dicegah putaran dari satu sama lain. Hal ini memungkinkan register tak berguna akan diteruskan ke ALUs setelah operasi sehingga dapat terjadi secara paralel. Jika ada data dependensi, namun fungsi unit akan menunggu nilai baru. Oleh karena itu fungsi unit menjadi terpenting dengan instruksi yang akan mulai dijalankan segera setelah data yang diterima.

Referensi: www.cmpe.boun.edu

Pipelining

::Pengertian Pipelining::

Metoda pengambilan dan dekode instruksi (pra-pengolahan) dimana pada waktu tertentu beberapa instruksi program ada pada berbagai tahap untuk diambil atau didekode.

::Pengenalan::

Prosesor Pipeline yang berputar adalah prosesor baru untuk arsitektur superscalar komputasi. Ini didasarkan pada cara yang mudah dan pipeline yang biasa, struktur yang dapat mendukung beberapa ALU untuk lebih efisien dalam pengiriman dari bagian beberapa instruksi. Daftar nilai arus yang berputar di sekitar pipa, dibuat oleh dependensi data lokal. Selama operasi normal, kontrol sirkuit tidak berada pada jalur yang kritis dan kinerja hanya dibatasi oleh data harga. Operasi mengalir dengan interval waktu sendiri. Ide utama dari Pipeline Prosesor yang berputar adalah circular uni-arah mengalir dari memori register oleh pusat waktu logika dan proses secara parallel dari operasi ALU.

Struktur lain yang menggunakan penyelesaian deteksi atau selain penundaan yang tepat dari pengaturan waktu pusat tetapi karena masalah waktu yang Syncronization, Pipelines memaksakan sebuah penurunan kinerja. Misalnya counterflow pipeline prosesor yang dirancang sekitar dua arah, pipa membawa petunjuk dan argumen dalam satu arah dan hasil yang lainnya b ini dapat menyebabkan Syncronization masalah antara prosesor.

Pipeline yang berputar menghindari masalah yang hanya melewati data dalam satu arah. Pada prinsipnya, prosesor dari register terus beredar di sekitar cincin yang berhubungan dengan berbagai fungsi ALU,-akses memori dan sebagainya .ada tiap tahap, nilai-nilai yang memeriksa dan disampaikan, kemungkinan setelah perubahan, tidak signifikan dengan pengeluaran tambahan untuk sinkronisasi. Dispatched adalah instruksi dari pusat ke fungsi unit yang memungkinkan beberapa masalah instruksi .

referensi: www.total.or.id, www.cmpe.boun.edu

Rabu, 17 Juni 2009

Mengapa ada batas pada kecepatan CPU?

Jika kita membeli chip CPU, terdapat tulisan dalam case " Maximum", chip mungkin menunjukkan bahwa ia merupakan bagian 3-GHz. Hal ini berarti tanpa chip akan melakukan kesalahan saat dijalankan pada atau di bawah kecepatan yang di dalam chip dari parameter suhu normal.

Ada dua hal yang membatasi kecepatan chip's:
  • Transmission delays pada chip
  • Heat build-up pada chip
Keterlambatan transmisi dalam kawat yang menghubungkan hal-hal yang sama pada chip. "kawat" pada sebuah chip yang luar biasa kecil atau aluminium tembaga strip etched menuju silicon. J chip tidak lebih dari kumpulan Transistor dan kawat hook mereka yang bersama-sama, dan transistor tidak, tapi on / off switch. Ketika sebuah perubahan dan beralih dari mati atau dimatikan untuk aktif, baik itu ke atas atau biaya yang memperkurus kawat yang menghubungkan transistor transistor berikutnya ke bawah baris. Bayangkan bahwa saat ini transistor "on." Kawat yang ia mengemudi diisi dengan elektron. Bila beralih berubah menjadi "off", ia harus mengalirkan elektron yang, dan yang membutuhkan waktu. Kawat yang lebih besar, yang memakan waktu lama.

Sebagai ukuran yang lebih kecil kawat yang sudah selama bertahun-tahun, waktu yang diperlukan untuk mengubah negara yang sudah lebih kecil, juga. Tetapi ada beberapa batas - pengisian dan draining kawat yang membutuhkan waktu. Bahwa batas kecepatan maksimum membebankan pada chip.

Ada juga minimum jumlah waktu yang dilakukan untuk transistor flip . Transistor adalah chained bersama dalam string, sehingga transistor atas keterlambatan menambahkan. Pada chip yang rumit seperti G5, ada kemungkinan akan lebih panjang rantai, dan panjang lagi rantai batas kecepatan maksimum dari seluruh chip.

Akhirnya, ada yang panas. Setiap kali Transistor di pintu mengubah , maka akan ada sedikit kebocoran listrik. Hal ini membuat listrik panas. Transistor sebagai ukuran shrink, jumlah saat ini (dan karena itu panas) telah ditolak, namun masih ada panas yang dibuat. Sebuah chip yang lebih cepat berjalan, semakin panas ia menghasilkan. Heat build-up puts lain pada batas kecepatan.

Anda dapat mencoba untuk menjalankan chip pada kecepatan yang lebih cepat - yang disebut melakukan overclocking. Pada banyak chip (terutama model-model tertentu dari Celeron ), ia bekerja dengan baik. Terkadang, Anda harus cool artificially chip untuk overclock it. Lain kali, Anda tidak dapat overclock sama sekali karena Anda telah bergeser ke transmisi penundaan.



Referensi Artikel: www.HowStuffWorks.com

Selasa, 16 Juni 2009

-Fungsi dan Cara Kerja CPU-

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

2.Cara Kerja CPU
Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama sekali 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.

Referensi Artikel: www.wikipedia.org


-Bagian2 CPU-


Apa saja isi dari CPU?

1. Hardisk
Merupakan tempat menyimpan data pada CPU. Jika hardisk dibuka, maka di dalamnya terlihat piringan logam sebagai tempat menulis data. Kecepatan putarannya bervariasi. Ada yang 5400 putaran per menit bahkan ada yang sampai 7200 putaran per menit. Kemampuan sebuah hardisk biasanya ditentukan oleh banyaknya data yang bisa disimpan. Besarnya bervariasi, ada yang 1,2 Gigabyte (GB) hingga 80 GB. Satu GB sama dengan 1000 Megabyte, sedangkan 1 Megabyte sama dengan 1000 Kilobyte.

2.Floppy Disk Drive

Floppy disk drive adalah alat untuk membaca atau menulis pada sebuah disket. Beberapa tahun lalu, masih banyak orang yang menggunakan floppy disk berukuran 5 1/4 inchi (disket besar), yang menyimpan data sebanyak 700 Kilobyte. Saat ini disket besar sudah digantikan dengan disket kecil yang berukuran (3 1/2 inchi) dengan kapasitas menyimpan data sebesar 1,4 Megabyte.

Cara kerja floppy disk hampir sama dengan harddisk. Plat bundar berisi data dalam disket akan diputar oleh motor dalam floopy disk drive. Sebuah magnet akan membaca atau menulis data pada disket itu.

3.CD Room Drive

Fungsinya adalah untuk membaca data dari sebuah Compact Disc (CD). ROM adalah singkatan dari Read Only Memory yang artinya penyimpan data yang hanya bisa dibaca. Jadi CD-ROM hanya bisa digunakan untuk membaca data, tidak dapat digunakan untuk menyimpan data. Namun saat ini, ada alat serupa yang dapat digunakan untuk menulis / menyimpan data ke sebuah CD. Namanya CD-RW (CD Read and Write atau CD baca dan tulis).

Cara kerja CD-ROM maupun CD-RW sama dengan cara kerja harddisk atau floppy disk drive. Bedanya, bagian yang diputar adalah kepingan CD. Alat pembacanya juga bukan head magnet tetapi sinar laser yang berkekuatan kecil.

4.Prosesor

inilah Brain (otaknya) komputer. Prosesor berfungsi untuk memproses semua perhitungan yang harus dilakukan oleh komputer. Kekuatan prosesor diukur dari frekuensinya, seperti 550 MHz (Mega Hertz) sampai saat ini sudah ada yang mencapai 1,4 GHz (Giga Hertz).

Jika komputer dihidupkan, maka prosesor akan langsung bekerja dan cepat naik suhunya. Oleh karena itu setiap prosesor saat ini sudah dilengkapi dengan besi penyalur panas (heat sink) dan kipas pendingin. Saat ini prosesor yang banyak digunakan adalah Intel, AMD dan IBM.

5.Memory

Memori dikenal juga dengan sebutan RAM (Random Acces Memory). Gunanya adalah untuk penyimpanan data sementara sewaktu digunakan oleh prosesor. Jika komputer di matikan, maka data di RAM akan hilang. Kecepatan membaca data RAM ini lebih cepat jika dibandingkan dengan Harddisk.

6.VGA

Kartu VGA (Video Graphic Adapter) berguna untuk menerjemahkan output (keluaran) komputer ke monitor. Untuk menggambar / design graphic ataupun untuk bermain game, kita perlu VGA yang tinggi kekuatannya. Saat ini ada VGA dengan memori 16, 32 hingga 128 Megabyte. Jenisnya yang terkenal adalah GeForce buatan perusahaan Nvidia.

7.Soundcard

Perangkat ini berguna untuk mengeluarkan suara. Kalau kita sedang mendengar musik ataupun bermain game, perangkat ini sangat bermanfaat. Suaranya bisa stereo, surround (berputar) bahkan suara 3 dimensi, sehingga kita seolah-olah berada ditempat kejadian. Tetapi perangkat ini kurang lengkap jika tidak ada speaker. Karena itu kita perlu menghubungkan speaker dengan soundcard yang telah terpasang dengan sebuah kabel yang disambung langsung ke soundcard. game


8.Motherboard

Motherboard atau disebut juga dengan Papan Induk berfungsi untuk tempat semua alat utama CPU yang telah disebutkan di atas. Bentuk motherboard seperti sebuah papan sirkuit elektronik.

Motherboard merupakan tempat berlalu lalangnya data. Motherboard menghubungkan semua peralatan komputer dan membuatnya bekerja sama sehingga komputer berjalan dengan lancar.






Referensi : www.E-SmartSchool.com

- Pengertian dan Komponen CPU-

Unit Pengolah Pusat (UPP) (bahasa Inggris: CPU, singkatan dari Central Processing Unit), merujuk kepada perangkat keras komputer yang memahami dan melaksanakan perintah dan dataperangkat 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.


KOMPONEN CPU
Komponen CPU terbagi menjadi beberapa macam, yaitu sebagai berikut:
1.Unit kontrol
Mampu mengatur jalannya program. Komponen ini sudah pasti terdapat dalam semua CPU.CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi-fungsi operasinya. termasuk dalam tanggung jawab unit kontrol adalah mengambil intruksi-intruksi 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. 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 serta mengawasi kerja dari ALU.
• Menyimpan hasil proses ke memori utama.

2.Register
merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya di gunakan untuk menyimpan data saat di olah ataupun data untuk pengolahan selanjutnya. Secara analogi, 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.

3.ALU
unit yang bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan. ALU sering di sebut mesin bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit arithmetika 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.

4.CPU Interconnections
adalah sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU, unit kontrol dan register-register dan juga dengan bus-bus eksternal CPU yang menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan /keluaran.


Referensi: www.wikipedia.org

Kamis, 11 Juni 2009

Blog Pertama karena tuntutan Tugas..

Wah.. hahhahaa.. Punya Blog juga, ga pernah terpikir untuk buat, coba kalo ga dikasi tugas.. wkwkwkwk.,.,
Yah.. setidaknya jadi tauw gimana caranya buat, hehehehe
Tauw gaa.. yang ngajarin buat siapa?
Nieh loh orang disebelahku.. wkwkwkwkwkw