Unit Pemroses Sentral: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
Nugroho ap (bicara | kontrib) kTidak ada ringkasan suntingan Tag: VisualEditor Suntingan perangkat seluler Suntingan peramban seluler |
Reno-Sifana (bicara | kontrib) k Perbaikan Kosmetika |
||
(55 revisi perantara oleh 27 pengguna tidak ditampilkan) | |||
Baris 1:
{{Multiple image
|direction = vertical
|width = 120
|image1 = Intel 80486DX2 top.jpg
|caption1 = Sebuah CPU [[Intel 80486DX2]], seperti yang terlihat dari atas
|image2 = Intel 80486DX2 bottom.jpg
|caption2 = Sisi bawah [[Intel 80486DX2]], menunjukkan pinnya
}}
'''Unit Pemroses Sentral''' atau '''Unit Pengolahan Pusat''' ({{lang-en|Central Processing Unit/Processor (CPU)}}) adalah [[sirkuit elektronik]] di dalam [[komputer]] yang menjalankan [[Set instruksi|perintah]] untuk membentuk [[program komputer]]. CPU melakukan operasi [[aritmatika]], logika, pengendalian, dan masukan/keluaran (I/O) dasar yang ditentukan oleh perintah dalam program. Industri komputer menggunakan istilah "unit pemrosesan pusat" sejak tahun 1955.<ref>{{Cite web|url=http://ed-thelen.org/comp-hist/BRL-i.html#IBM-CPC|title="A Survey of Domestic Electronic Digital Computing Systems".|last=|first=|date=|website=ed-thelen.org|access-date=2020-08-08}}</ref> Secara tradisional, istilah "CPU" mengacu pada [[Prosesor (komputasi)|prosesor]], lebih khusus lagi untuk unit pemrosesan dan [[control unit]] (CU), yang membedakan elemen inti komputer ini dari komponen eksternal seperti [[Penyimpanan data komputer#Penyimpanan utama|memori utama]] dan sirkuit I/O.<ref>{{Cite journal|last=|first=|date=|title=Kuck, David (1978). Computers and Computations, Vol 1. John Wiley & Sons, Inc. p. 12.|url=https://en.wiki-indonesia.club/wiki/Special:BookSources/978-0471027164|journal=Wikipedia|language=en|volume=|issue=|pages=|doi=}}</ref>
Bentuk, [[Desain prosesor|desain]], dan implementasi CPU telah berubah sepanjang sejarahnya, tetapi operasi dasarnya hampir tidak berubah. Komponen utama dari CPU termasuk [[Arithmetic logic unit|unit logika aritmatika]] (ALU) yang melakukan aritmatika dan [[Boolean algebra|operasi logika]], [[register prosesor]] yang memasok [[Operand|operan]] ke ALU dan menyimpan hasil operasi ALU, dan unit kontrol yang mengatur pengambilan (dari memori) dan eksekusi. instruksi dengan mengarahkan operasi terkoordinasi ALU, register dan komponen lainnya.
== Operasi ==
Operasi dasar dari sebagian besar CPU, terlepas dari bentuk fisiknya, adalah menjalankan urutan perintah tersimpan yang disebut program. Perintah yang akan dijalankan disimpan dalam beberapa jenis memori komputer. Hampir semua CPU mengikuti langkah-langkah pengambilan, dekode, dan eksekusi dalam operasinya, yang secara kolektif dikenal sebagai siklus instruksi.
Setelah eksekusi instruksi, seluruh proses berulang, dengan siklus instruksi berikutnya biasanya mengambil instruksi urutan berikutnya karena nilai yang bertambah di [[Program counter|penghitung program]]. Jika instruksi jump dijalankan, penghitung program akan dimodifikasi untuk memuat alamat instruksi yang dilompati dan eksekusi program berlanjut secara normal. Dalam CPU yang lebih rumit, beberapa perintah dapat diambil, didekodekan, dan dijalankan secara bersamaan.
===
Langkah pertama, pengambilan, melibatkan pengambilan instruksi (yang diwakili oleh nomor atau urutan angka) dari memori program. Lokasi instruksi (alamat) dalam memori program ditentukan oleh penghitung program (PC), yang menyimpan nomor yang mengidentifikasi alamat instruksi berikutnya yang akan diambil. Setelah instruksi diambil, PC bertambah panjang instruksi sehingga akan berisi alamat instruksi berikutnya secara berurutan.{{Efn|Since the program counter counts ''memory addresses'' and not ''instructions'', it is incremented by the number of memory units that the instruction word contains. In the case of simple fixed-length instruction word ISAs, this is always the same number. For example, a fixed-length 32-bit instruction word ISA that uses 8-bit memory words would always increment the PC by four (except in the case of jumps). ISAs that use variable-length instruction words increment the PC by the number of memory words corresponding to the last instruction's length.}} Seringkali, instruksi yang akan diambil harus diambil dari memori yang relatif lambat, menyebabkan CPU berhenti ketika menunggu instruksi dikembalikan. Masalah ini sebagian besar ditangani dalam prosesor modern oleh tembolok dan arsitektur pipa (lihat di bawah).
===
Instruksi yang diambil CPU dari memori menentukan apa yang akan dilakukan CPU. Pada langkah dekode, dilakukan oleh sirkuit yang dikenal sebagai ''instruction decoder'', instruksi diubah menjadi sinyal yang mengontrol bagian lain dari CPU.
Cara instruksi diinterpretasikan ditentukan oleh CPU arsitektur set instruksi (ISA).{{Efn|Because the instruction set architecture of a CPU is fundamental to its interface and usage, it is often used as a classification of the "type" of CPU. For example, a "PowerPC CPU" uses some variant of the PowerPC ISA. A system can execute a different ISA by running an emulator.}} Seringkali, satu kelompok bit (yaitu, "field") di dalam instruksi, yang disebut opcode, menunjukkan operasi mana yang akan dilakukan, sedangkan field yang tersisa biasanya memberikan informasi tambahan yang diperlukan untuk operasi tersebut, seperti operan. Operan tersebut dapat ditentukan sebagai nilai konstan (disebut immediate value), atau sebagai lokasi nilai yang mungkin merupakan [[register prosesor]] atau alamat memori, seperti yang ditentukan oleh beberapa [[mode pengalamatan]].
== Struktur dan implementasi ==
{{see also|Desain prosesor}}
[[Berkas:ABasicComputer.gif|jmpl|Diagram blok dari komputer uniprocessor-CPU dasar. Garis hitam menunjukkan aliran data, sedangkan garis merah menunjukkan aliran kontrol; panah menunjukkan arah aliran.]]
Terpasang ke dalam sirkuit CPU adalah serangkaian operasi dasar yang dapat dilakukannya, yang disebut [[Arsitektur set instruksi|set instruksi]]. Operasi semacam itu mungkin melibatkan, misalnya, menambah atau mengurangi dua angka, membandingkan dua angka, atau melompat ke bagian program yang berbeda. Setiap operasi dasar diwakili oleh kombinasi [[bit]] tertentu, yang dikenal sebagai bahasa mesin [[opcode]] ; saat menjalankan instruksi dalam program bahasa mesin, CPU memutuskan operasi mana yang akan dilakukan dengan "mendekode" opcode. Instruksi bahasa mesin lengkap terdiri dari opcode dan, dalam banyak kasus, bit tambahan yang menentukan argumen untuk operasi (misalnya, angka yang akan dijumlahkan dalam kasus operasi penambahan). Menaikkan skala kompleksitas, program bahasa mesin adalah kumpulan instruksi bahasa mesin yang dieksekusi CPU.
=== Arithmetic logic unit ===
{{main|Arithmetic logic unit}}
[[Berkas:ALU_block.gif|jmpl|Representasi simbolik dari ALU dan sinyal input dan outputnya]]
Arithmetic logic unit (ALU) adalah sirkuit digital di dalam prosesor yang melakukan operasi aritmatika integer dan [[Operasi bitwise|logika bitwise]]. Input ke ALU adalah kata-kata data yang akan dioperasikan (disebut [[operand]]), informasi status dari operasi sebelumnya, dan kode dari unit kontrol yang menunjukkan operasi mana yang harus dilakukan. Bergantung pada instruksi yang dijalankan, operand dapat berasal dari [[Register prosesor|register CPU internal]] atau memori eksternal, atau mungkin merupakan konstanta yang dihasilkan oleh ALU itu sendiri.
===
Setiap CPU merepresentasikan nilai numerik dengan cara tertentu. Misalnya, beberapa komputer digital awal merepresentasikan angka sebagai nilai sistem angka desimal (basis 10) yang sudah dikenal, dan yang lainnya menggunakan representasi yang lebih tidak biasa seperti terner (basis tiga). Hampir semua CPU modern merepresentasikan angka dalam bentuk biner, dengan setiap digit diwakili oleh beberapa kuantitas fisik bernilai dua seperti [[volt]]ase "tinggi" atau "rendah".{{Efn|The physical concept of [[voltage]] is an analog one by nature, practically having an infinite range of possible values. For the purpose of physical representation of binary numbers, two specific ranges of voltages are defined, one for logic '0' and another for logic '1'. These ranges are dictated by design considerations such as noise margins and characteristics of the devices used to create the CPU.}}
[[Berkas:Binary_Forty.PNG|kiri|jmpl|Kata enam-bit yang berisi representasi yang dikodekan biner dari nilai desimal 40. Kebanyakan CPU modern menggunakan ukuran kata yang merupakan pangkat dua, misalnya 8, 16, 32 atau 64 bit.]]
Terkait dengan representasi numerik adalah ukuran dan presisi interger yang dapat diwakili oleh CPU. Dalam kasus CPU biner, ini diukur dengan jumlah bit (digit signifikan dari interger yang dikodekan biner) yang dapat diproses CPU dalam satu operasi, yang biasa disebut ''[[Word (arsitektur komputer)|ukuran kata]]'', ''lebar bit'', ''lebar jalur data'', ''presisi integer''. , atau ''ukuran integer''. Ukuran interger CPU menentukan kisaran nilai interger yang dapat dioperasikan secara langsung. Misalnya, CPU [[Komputasi 8-bit|8-bit]] dapat secara langsung memanipulasi interger yang diwakili oleh delapan bit, yang memiliki kisaran 256 (<math>2^8</math>) nilai interger terpisah.
== Performa ==
''Performa'' atau ''kecepatan'' dari prosesor bergantung pada, di antara banyak faktor lain, kecepatan clock (umumnya diberikan dalam kelipatan [[hertz]]) dan ''instructions per clock'' (IPC), yang bersama-sama merupakan faktor untuk ''[[instructions per second]]'' (IPS) yang CPU dapat bekerja.<ref>{{Cite web|url=http://www.cpu-world.com/Glossary/C/CPU_Frequency.html|title=CPU Frequency|website=www.cpu-world.com|access-date=2020-08-08}}</ref> Banyak nilai IPS yang dilaporkan telah mewakili tingkat eksekusi "puncak" pada urutan instruksi buatan dengan beberapa cabang, sedangkan beban kerja realistis terdiri dari campuran instruksi dan aplikasi, beberapa di antaranya membutuhkan waktu lebih lama untuk dieksekusi daripada yang lain. Kinerja [[hierarki memori]] juga sangat memengaruhi kinerja prosesor, masalah yang hampir tidak dipertimbangkan dalam penghitungan MIPS. Karena masalah ini, berbagai pengujian standar, yang sering disebut "''[[benchmark]]''" untuk tujuan ini —seperti [[SPECint]] — telah dikembangkan untuk mencoba mengukur kinerja efektif yang sebenarnya dalam aplikasi yang umum digunakan.
== Catatan ==
{{notelist|30em}}
== Referensi ==
{{reflist}}
== Pranala luar ==
{{Commons category|Unit pemrosesan sentral}}
* [http://www.
* [https://spectrum.ieee.org/25chips 25 Microchips that shook the world] - sebuah artikel oleh [[Institute of Electrical and Electronics Engineers]].
{{Komponen_dasar_komputer}}
▲[[Kategori:CPU| ]]
|