Superskalar: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
k saya menambahkan tambahan deskripsi tentang super prosesor
InternetArchiveBot (bicara | kontrib)
Add 1 book for Wikipedia:Pemastian (20231209)) #IABot (v2.0.9.5) (GreenC bot
 
(4 revisi perantara oleh 2 pengguna tidak ditampilkan)
Baris 1:
{{rapikan|topik=teknologi informasi}}
'''Prosesor superskalar''' adalah salah satu jenis [[arsitektur komputer]] di mana prosesor dalam bentuk uniprosesor dapat menjalankan dua atau lebih operasi [[Skalar (matematika)|skalar]] secara paralel<ref>{{Cite book|last=Shen|first=John Paul|last2=Lipasti|first2=Mikko H.|date=2013|title=Modern processor design: fundamentals of superscalar processors|location=Long Grove, Illinois|publisher=Waveland Press|isbn=978-1-4786-0783-0}}</ref>. Istilah ini juga bisa merujuk kepada prosesor yang mampu menjalankan banyak instruksi setiap siklusnya menggunakan teknik yang disebut ''pipelining''<ref>{{Cite book|last=Hennessy|first=John L.|last2=Patterson|first2=David A.|date=2019|title=Computer architecture: a quantitative approach|url=https://archive.org/details/computerarchitec06edhenn|location=Cambridge, Mass|publisher=Morgan Kaufmann Publishers|isbn=978-0-12-811905-1|edition=6|others=Krste Asanović}}</ref>.
'''Prosesor Superskalar'''
 
Arsitektur superskalar dirancang untuk meningkatkan kecepatan pemrosesan [[Unit Pemroses Sentral|CPU]]. Sebagian besar komputer yang digunakan saat ini menggunakan mekanisme superskalar. Standar ''pipelining'' yang digunakan melibatkan pengolahan bilangan bulat (''integer'') dan sebagian besar prosesor juga memiliki kemampuan untuk mengolah data dengan [[Unit titik mengambang|titik mengambang]].
Salah satu jenis dari arsitektur, dimana superscalar adalah sebuah uniprocessor yang dapat mengeksekusi dua atau lebih operasi scalar dalam bentuk paralel atau istilah bagi prosesor yang mampu melakukan banyak instruksi setiap siklusnya, dengan menggunakan sebuah teknik yang disebut dengan ''pipelining''.
 
Pemrosesan secara paralel tersebut diatas dapat diilustrasikan sebagai berikut. Sebagai contoh, operasi pertambahan ({{code|add}}) pada variabel satu (R1), dua (R2), dan tiga (R3) dengan format kode sebagai berikut:
Merupakan salah satu rancangan untuk meningkatkan kecepatan CPU. Kebanyakan dari komputer saat ini menggunakan mekanisme superscalar ini. Standar pipeline yang digunakan adalah untuk pengolahan bilangan matematika ''integer'' (bilangan bulat, bilangan yang tidak memiliki pecahan), kebanyakan CPU juga memiliki kemampuan untuk pengolahan untuk data floating point (bilangan berkoma).
 
{{pre|
Misalkan Instruksi
'''Add R1, R2, R3'''
'''Add R1, R2, R3'''
 
# R1 dan R2 merupakan variabel berisi nilai bilangan bulat
Instruksi yang akan menambahkan isi register R1 dan R2 dan menempatkan jumlahnya dalam register R3. Isi dari register R1 dan R2 mula-mula akan ditransfer ke [[Arithmetic Logic Unit|Unit aritmetika dan logika]]. Setelah operasi penambahan dilakukan, hasil penjumlahan tersebut akan ditransfer ke register R3.
# R3 merupakan variabel tempat penyimpanan hasil dari operasi pertambahan R1 dan R2
}}
 
Instruksi yangdiatas akan menambahkan isinilai dari [[Register prosesor|register]] pada variabel R1 dan variabel R2 dan menempatkan jumlahnyahasilnya dalam register milik variabel R3. IsiProses darioperasi pertambahan pada nilai di register variabel R1 dan variabel R2 mula-muladilakukan akan ditransfer kedi [[ArithmeticUnit Logicaritmatika Unitdan logika|Unitunit aritmetika dan logika]] pada CPU. Setelah operasi penambahan dilakukan, hasil penjumlahan tersebutpenjumlahannya akan ditransfer ke register milik variabel R3.
Prosesor dapat membaca instruksi selanjutnya dari memori, sementara operasi penambahan dilakukan. Kemudian jika instruksi menggunakan ALU, [[operand]]-nya dapat ditransfer ke input ALU pada waktu yang sama dengan hasil instruksi '''Add''' ditransfer ke register R3.
 
Prosesor dapat membaca instruksi selanjutnyabaru dari memori, sementarapada waktu bersamaan dengan saat operasi penambahan dilakukan. Kemudian, jika instruksi baru ini menggunakan ALUunit aritmetika dan logika, [[operand]]-nya dapat ditransfer ke input ALUunit aritmetika dan logika pada waktusaat yang sama dengan hasil instruksi '''Add''' ditransfer ke register milik variabel R3.
Pipeline yang mengolah integer dapat juga digunakan untuk mengolah data bertipe floating point ini, namun untuk aplikasi tertentu, terutama untuk aplikasi keperluan ilmiah CPU yang memiliki kemampuan pengolahan floating point dapat meningkatkan kecepatan prosesnya secara dramatis.
 
''Pipeline'' yang mengolah integerbilangan dapatbulat juga dapat digunakan untuk mengolah data bertipedengan floatingtipe pointtitik inimengambang. Namun, namun untuk aplikasi tertentu, terutama untukdalam aplikasikonteks keperluan ilmiah, CPU yang memiliki kemampuan pengolahan floatingdata tipe titik mengambang pointtersendiri dapat meningkatkan kecepatan prosesnyapemrosesan secara dramatis.
Peristiwa yang bisa dilakukan dengan metoda superscalar ini adalah dalam hal memperkirakan pencabangan instruksi (brach prediction) serta perkiraan eksekusi perintah (speculative execution). Peristiwa ini sangat menguntungkan buat program yang membutuhkan pencabangan dari kelompok intruksi yang dijalankankannya.
 
PeristiwaKomputasi yang bisadapat dilakukan dengan metodaprosesor superscalarsuperskalar ini adalah, dalamantara hallain, memperkirakanuntuk melakukan prediksi pencabangan instruksi (brach''branch prediction'') serta perkiraan eksekusi perintah (speculative execution)spekulatif. Peristiwa ini sangat menguntungkan buatbagi program yang membutuhkan pencabangan dari kelompok intruksiinstruksi yang dijalankankannyadijalankan.
Program yang terdiri dari kelompok perintah bercabang ini sering digunakan dalam pemrograman. Contohnya dalam menentukan aktifitas yang dilakukan oleh suatu sistem berdasarkan umur seseorang yang sedang diolahnya, katakanlah jika umur yang bersangkutan lebih dari 18 tahun, maka akan diberlakukan instruksi yang berhubungan dengan umur tersebut, anggaplah seseorang tersebut dianggap telah dewasa, sedangkan untuk kondisi lainnya dianggap belum dewasa. Tentu perlakuannya akan dibedakan sesuai dengan sistem yang sedang dijalankan.
 
Program yang terdiri dari kelompok perintah bercabang ini sering digunakan dalam pemrograman. Contohnya adalah dalam menentukan aktifitasaktivitas yang dilakukan oleh suatu sistem berdasarkan umur seseorang yang sedang diolahnya,. katakanlahMisalnya, jika umur yang bersangkutan lebih dari 18 tahun, maka akan diberlakukan instruksi yang berhubungan dengan umur tersebut,. anggaplahAnggaplah seseorang tersebut dianggap telah dewasa,. sedangkanSedangkan untuk kondisi lainnya, dianggap belum dewasa. Tentu perlakuannyaperlakuan akan dibedakan sesuai dengan sistem yang sedang dijalankan.
 
Pada kasus ideal, jika semua instruksi ditumpuk ke derajat yang maksimum yang mungkin dilakukan, maka eksekusi dilanjutkan pada kecepatan penyelesaian satu instruksi dalam tiap siklus detak prosesor. Instruksi individual, mungkin masih memerlukan beberapa siklus detak agar selesai dilakukan. Tetapi untuk tujuan perhitungan, prosesor superskalar umumnya mampu melakukannya dalam tiap siklus.
Baris 28 ⟶ 31:
Jika CPU berfikir bahwa branch akan menuju suatu cabang, biasanya berdasarkan pekerjaan sebelumnya, maka perintah berikutnya sudah dipersiapkan untuk dieksekusi berikut data-datanya, bahkan dengan adanya pipeline ini, bila tidak diperlukan suatu referensi dari instruksi terakhir, maka bisa dilaksanakan dengan segera, karena data dan instruksi yang dibutuhkan telah dipersiapkan sebelumnya.
 
Dalam hal ''speculativeeksekusi execution''berspekulasi, artinya CPU akan menggunakan pipelining untuk melakukan perhitungan pada pipelinejalur yang berbeda berdasarkan kemungkinanperkiraan yang diperkirakandibuat oleh komputer. Jika kemungkinanperkiraan yang dilakukandibuat oleh komputer tepatbenar, maka hasilnya sudah bisa segera diambil langsung dan tinggal melanjutkan perintah berikutnya, sedangkandapat jikadilanjutkan. kemungkinanNamun, yangjika diperkirakanperkiraan oleh komputertersebut tidak tepatbenar, maka CPU akan dilaksanakanmelakukan eksekusi berdasarkan kemungkinan lain sesuai dengan logika instruksi tersebutyang diberikan.
 
Teknik yang digunakan untuk pipeline dan superscalar ini bisadapat melaksanakanmelakukan branch prediction dan speculative execution, yang tentunya membutuhkan ekstrabanyak transistor yang tidak sedikit untuk hal tersebuttambahan. Sebagai perbandingan, komputer yang membangkitkan pemrosesan pada PC pertama yang dikeluarkanmenggunakan olehmesin IBM8088 padadari mesinIBM 8088hanya memiliki sekitar 29.000 transistor. SedangkanSementara padaitu, mesin Pentium III, dengan teknologi superscalar dan superpipeline, memiliki sekitar 7,5 juta transistor yang mendukung branch prediction, speculative execution, sertadan berbagai kemampuan lainnya memiliki sekitar 7,5 juta transistor. Beberapa CPU terkini lainnya seperti HP 8500 bahkan memiliki sekitar 140 juta transistor.
 
Pengguna superscalar Prosesor ''Intel x86'' yang menggunakan arsitektur superskalar adalah keluarga ''Intel Pentium,'' ''Intel Pentium Pro,''<ref>{{Cite journal|date=2023-06-02|title=Pentium Pro|url=https://en.wiki-indonesia.club/w/index.php?title=Pentium_Pro&oldid=1158237558|journal=Wikipedia|language=en}}</ref> ''Intel Pentium II , Intel Pentium III , Intel Itanium, Intel Xeon, Intel Pentium 4, Intel Pentium M, Intel Core'' dari Intel Corporation. Keluarga ''AMD K5, AMD K6, AMD Athlon, AMD Athlon 64'', dan ''AMD Opteron.''
 
Superscalar (atau superskalar) adalah arsitektur prosessorprosesor yang memungkinkan eksekusi yang bersamaan (parallel)paralel dari instruksi yang banyak instruksi pada tahap pipeline yang sama sebaikdan dengan kualitas yang sama dengan tahap pipeline yang lain. [1]
 
Merupakan salah satu rancangan untuk meningkatkan kecepatan CPU. Kebanyakan dari komputer saat ini menggunakan mekanisme superscalarsuperskalar ini. Standar pipelinepipelain yang digunakan adalah untuk pengolahan bilangan matematika integer (bilangan bulat, bilangan yang tidak memiliki pecahan), kebanyakan CPU juga memiliki kemampuan untuk pengolahan untuk data floating point (bilangan berkoma). PipelinePipelain yang mengolah integer dapat juga dapat digunakan untuk mengolah data bertipeberjenis floating point ini, namun untuk aplikasi tertentu, terutama untuk aplikasi keperluan ilmiah, CPU yang memiliki kemampuan pengolahan floating point dapat meningkatkan kecepatan prosesnya secara dramatis. [2]
 
SuperscalarTeknologi inisuperscalar mampu menjalankan ''Instructioninstruksi Levelsecara Parallelism''paralel dengan menggunakan satu prosesor. Superscalar dapat diaplikasikandiimplementasikan dibaik pada arsitektur RISC danmaupun CISC, tetapinamun umumnya lebih sering digunakan pada umumnyaarsitektur RISC. [1]
 
Peristiwa menarik yang bisadapat dilakukan dengan metode superscalar ini adalah dalam hal memperkirakanmemprediksi pencabangan instruksi (''brachbranch prediction)'' sertadan perkiraanmelaksanakan eksekusi perintahsecara spekulatif (speculative execution). Peristiwa ini sangat menguntungkan buatbagi program-program yang membutuhkan pencabangan dari kelompok intruksiinstruksi yang dijalankannyamereka jalankan. [2]
 
Program yang terdiri dari kelompok perintah bercabang ini sering digunakan dalam pemrograman. Contohnya dalam menentukan aktivitas yang dilakukan oleh suatu sistem berdasarkan umur seseorang yang sedang diolahnya, katakanlah jika umur yang bersangkutan lebih dari 18 tahun, maka akan diberlakukan instruksi yang berhubungan dengan umur tersebut, anggaplah seseorang tersebut dianggap telah dewasa,. sedangkanSedangkan untuk kondisi lainnya, seseorang dianggap belum dewasa. Tentu perlakuannya akan dibedakan sesuai dengan sistem yang sedang dijalankan.. [2]
 
Organisasi Superscalar secara umum
Baris 58 ⟶ 61:
Tersedianya sumber untuk eksekusi paralel dari beberapa instruksi.
Mekanisme processing instruksi dengan urutan yg sesuai. [1]
 
== Referensi ==
 
{{reflist}}
 
{{Authority control}}