SPARC: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
k Bot: +{{Authority control}} |
Tidak ada ringkasan suntingan Tag: kemungkinan perlu pemeriksaan terjemahan VisualEditor |
||
Baris 3:
| image = Sparc-logo.svg
| name = SPARC
| designer = [[Sun Microsystems]] (
| bits = 64-bit (32 → 64)
| introduced = 1987 (
| version = V9 (1993) / OSA2017
| design = RISC
Baris 18:
| fpr = 32 (usable as 32 single-precision, 32 double-precision, or 16 quad-precision)
}}
[[Berkas:Sun UltraSPARCII.jpg|jmpl|[[Prosesor mikro]] [[Sun Microsystems|Sun]] [[UltraSPARC II]]
'''SPARC''' ('''Scalable Processor Architecture''', artinya '''Arsitektur Prosesor yang Dapat Diskalakan''') adalah [[arsitektur set instruksi]] [[RISC|komputer yang disederhanakan]] (RISC) yang awalnya dikembangkan oleh [[Sun Microsystems]].<ref>{{Cite web|date=2016-06-22|title=Fujitsu to take ARM into the realm of Super {{!}} The CPU Shack Museum|url=https://www.cpushack.com/2016/06/21/fujitsu-to-take-arm-into-the-realm-of-super/|website=The CPU Shack Museum {{!}} CPU History Museum for Intel CPUs, AMD Processor, Cyrix Microprocessors, Microcontrollers and more.|access-date=2022-06-23}}</ref><ref>{{Cite web|title=Timeline {{!}} SPARC International, Inc.|url=https://sparc.org/timeline/|language=en-US|access-date=2022-06-23}}</ref> Desainnya sangat dipengaruhi oleh sistem [[RISC Berkeley]] eksperimental yang dikembangkan pada awal 1980-an. Pertama kali dikembangkan pada tahun 1986 dan dirilis pada tahun 1987, SPARC adalah salah satu sistem RISC komersial awal yang paling sukses, dan keberhasilannya menyebabkan pengenalan desain RISC serupa dari banyak vendor melalui tahun 1980-an dan 1990-an.
Implementasi
Mulai September 2017, prosesor SPARC komersial kelas atas terbaru adalah [[SPARC64 XII]] [[Fujitsu]] (diperkenalkan pada 2017 untuk peladen SPARC M12-nya) dan [[SPARC M8]] [[Oracle Corporation|Oracle]] yang diperkenalkan pada September 2017 untuk peladen kelas atas.
Pada hari Jumat, 1 September 2017, setelah putaran PHK yang dimulai di Oracle Labs pada November 2016, Oracle menghentikan desain SPARC setelah menyelesaikan M8. Sebagian besar grup pengembangan inti prosesor di Austin, Texas, diberhentikan, begitu pula tim di Santa Clara, California, dan Burlington, Massachusetts.<ref>{{Cite web|title=Sun set: Oracle closes down last Sun product lines|url=https://www.zdnet.com/article/sun-set-oracle-closes-down-last-sun-product-lines/|website=ZDNet|language=en|access-date=2022-06-23}}</ref><ref>{{Cite web|last=Francisco|first=Shaun Nichols in San|title=Oracle finally decides to stop prolonging the inevitable, begins hardware layoffs|url=https://www.theregister.com/2017/08/31/oracle_stops_prolonging_inevitable_layoffs/|website=www.theregister.com|language=en|access-date=2022-06-23}}</ref>
Fujitsu juga akan menghentikan produksi SPARC mereka (telah beralih memproduksi CPU berbasis ARM mereka sendiri), setelah dua versi "disempurnakan" dari server SPARC M12 Fujitsu yang lebih tua pada tahun 2020–22 (sebelumnya direncanakan untuk tahun 2021) dan lagi pada tahun 2026–27, akhir penjualan pada tahun 2029, server UNIX dan setahun kemudian untuk [[komputer bingkai utama]] dan akhir dukungan mereka pada tahun 2034 "untuk mempromosikan modernisasi pelanggan".<ref>{{Cite web|title=Roadmap : Fujitsu Global|url=https://www.fujitsu.com/global/products/computing/servers/unix/sparc/key-reports/roadmap/|website=www.fujitsu.com|access-date=2022-06-23}}</ref>
== Fitur ==
Arsitektur SPARC sangat dipengaruhi oleh desain RISC sebelumnya, termasuk [[RISC Berkeley|RISC]] I dan II dari [[University of California, Berkeley]] dan [[IBM 801]]. Desain RISC asli ini minimalis, termasuk sesedikit mungkin fitur atau kode operasi dan bertujuan untuk mengeksekusi instruksi dengan kecepatan hampir satu instruksi per [[siklus clock]]. Ini membuat mereka mirip dengan [[arsitektur MIPS]] dalam banyak hal, termasuk kurangnya instruksi seperti perkalian atau pembagian. Fitur lain dari SPARC yang dipengaruhi oleh gerakan RISC awal ini adalah [[slot penundaan cabang]].
Prosesor SPARC biasanya berisi sebanyak 160 [[Register prosesor|register tujuan umum]]. Menurut spesifikasi "Oracle SPARC Architecture 2015", sebuah "implementasi dapat berisi 72 hingga 640 register 64-bit tujuan umum".<ref>{{Cite web|title=Oracle SPARC Architecture 2015: One Architecture ... Multiple Innovative Implementations|url=http://www.oracle.com/technetwork/server-storage/sun-sparc-enterprise/documentation/sparc-architecture-2015-2868130.pdf|archive-url=https://web.archive.org/web/20160424051826/http://www.oracle.com/technetwork/server-storage/sun-sparc-enterprise/documentation/sparc-architecture-2015-2868130.pdf|archive-date=2016-04-24}}</ref> Pada titik mana pun, hanya 32 dari mereka yang langsung terlihat oleh perangkat lunak — 8 adalah satu set register global (salah satunya, '''g0''', terprogram ke nol, jadi hanya tujuh dari mereka yang dapat digunakan sebagai register) dan 24 lainnya adalah dari [[Tumpukan (struktur data)|tumpukan]] register. Ke-24 register ini membentuk apa yang disebut [[jendela register]], dan pada panggilan/pengembalian fungsi, jendela ini dipindahkan ke atas dan ke bawah tumpukan register. Setiap jendela memiliki 8 register lokal dan berbagi 8 register dengan masing-masing jendela yang berdekatan. Register bersama digunakan untuk meneruskan parameter fungsi dan mengembalikan nilai, dan register lokal digunakan untuk mempertahankan nilai lokal di seluruh panggilan fungsi.
"Scalable" di SPARC berasal dari fakta bahwa spesifikasi SPARC memungkinkan implementasi untuk menskalakan dari prosesor tertanam hingga prosesor server besar, semuanya berbagi set instruksi inti (tanpa hak istimewa) yang sama. Salah satu parameter arsitektur yang dapat diukur adalah jumlah jendela register yang diimplementasikan; spesifikasi memungkinkan dari tiga hingga 32 jendela untuk diimplementasikan, sehingga implementasi dapat memilih untuk mengimplementasikan semua 32 untuk memberikan efisiensi [[tumpukan panggilan]] maksimum, atau untuk menerapkan hanya tiga untuk mengurangi biaya dan kompleksitas desain, atau untuk mengimplementasikan beberapa nomor di antaranya. Arsitektur lain yang menyertakan fitur [[berkas register]] serupa termasuk [[Intel i960]], [[IA-64]], dan [[AMD 29000]].
Arsitektur ini telah melalui beberapa revisi. Ini memperoleh fungsionalitas perkalian dan pembagian perangkat keras di Versi 8. 64-bit (pengalamatan dan data) ditambahkan ke spesifikasi SPARC versi 9 yang diterbitkan pada tahun 1994.
Dalam SPARC Versi 8, berkas register [[titik kambang]] memiliki 16 register [[Format titik kambang presisi ganda|presisi ganda]]. Masing-masing dapat digunakan sebagai dua register [[Format titik kambang presisi tunggal|presisi tunggal]], menyediakan total 32 register presisi tunggal. Sepasang register presisi ganda ganjil genap dapat digunakan sebagai register [[Format titik kambang presisi quad|presisi quad]], sehingga memungkinkan 8 register presisi quad. SPARC Versi 9 menambahkan 16 register presisi ganda (yang juga dapat diakses sebagai 8 register presisi quad), tetapi register tambahan ini tidak dapat diakses sebagai register presisi tunggal. Tidak ada CPU SPARC yang mengimplementasikan operasi quad-presisi dalam perangkat keras pada tahun 2004.
Instruksi penambahan dan pengurangan yang ditandai melakukan penambahan dan pengurangan pada nilai dengan memeriksa bahwa dua bit terbawah dari kedua operan adalah 0 dan melaporkan overflow jika tidak. Ini dapat berguna dalam implementasi [[Sistem waktu nyata|waktu nyata]] untuk [[ML (bahasa pemrograman)|ML]], [[Lisp (bahasa pemrograman)|Lisp]], dan bahasa serupa yang mungkin menggunakan format integer yang diberi tag.
[[Endian]] arsitektur SPARC V8 32-bit adalah murni endian besar. Arsitektur SPARC V9 64-bit menggunakan instruksi endian besar, tetapi dapat mengakses data dalam urutan bita endian besar atau endian kecil, dipilih baik pada level instruksi aplikasi ([[Unit muat-simpan|muat-simpan]]) atau pada level [[Penghalaman memori|halaman memori]] (melalui pengaturan MMU). Yang terakhir ini sering digunakan untuk mengakses data dari perangkat endian kecil, seperti yang ada di bus PCI.
== Referensi ==
<references />
== Pranala luar ==
|