ELEKTRO INDONESIA Edisi ke Empat, Oktober 1996
Pendahuluan
Ciri-ciri Prosesor RISC
Fase Awal Perkembangan Prosesor RISC
Hal yang sama dipercayai juga oleh Seymour Cray, spesialis pembuat superkomputer. Pada tahun 1975, berdasarkan kajian yang dilakukannya, Seymour Cray menyimpulkan bahwa penggunaan register sebagai tempat manipulasi data menyebabkan rancangan instruksi menjadi sangat sederhana. Ketika itu perancang prosesor lain lebih banyak membuat instruksi-instruksi yang merujuk ke memori daripada ke register seperti rancangan Seymour Cray. Sampai akhir tahun 1980-an komputer-komputer rancangan Seymour Cray, dalam bentuk superkomputer seri Cray, merupakan komputer-komputer dengan kinerja sangat tinggi.
Pada tahun 1975, kelompok peneliti di IBM di bawah pimpinan George Radin, memulai merancang komputer berdasar konsep John Cocke. Berdasarkan saran John Cocke, setelah meneliti frekuensi pemanfaatan instruksi hasil kompilasi suatu program, untuk memperoleh prosesor berkinerja tinggi tidak perlu diimplementasikan instruksi kompleks ke dalam prosesor bila instruksi tersebut dapat dibuat dari instruksi-instruksi sederhana yang telah dimilikinya. Kelompok IBM ini menghasilkan komputer 801 yang menggunakan instruksi format-tetap dan dapat dieksekusi dalam satu siklus detak (Robinson, 1987 : 143). Komputer 801 yang dibuat dengan teknologi ECL (emitter-coupled logic) , 32 buah register, chace terpisah untuk memori dan instruksi ini diselesaikan pada tahun 1979. Karena sifatnya yang eksperimental, komputer ini tidak dijual di pasaran.
Rancangan prosesor RISC-1 ditujukan untuk mendukung bahasa C, yang dipilih karena popularitasnya dan banyaknya pengguna. Realisasi rancangan diselesaikan oleh kelompok Patterson dalam waktu 6 bulan. Fabrikasi dilakukan oleh MOVIS dan XEROX dengan menggunakan teknologi silikon NMOS (N-channel Metal-oxide Semiconductor) 2 mikron. Hasilnya adalah sebuah cip rangkaian terpadu dengan 44.500 buah transistor (Heudin, 1992 : 230). Cip RISC-1 selesai dibuat pada musim panas dengan kecepatan eksekusi 2 mikrosekon per instruksi (pada frekuensi detak 1,5 MHz), 4 kali lebih lambat dari kecepatan yang ditargetkan. Tidak tercapainya target itu disebabkan terjadinya sedikit kesalahan perancangan, meskipun kemudian dapat diatasi dengan memodifikasi rancangan assemblernya.
Berdasarkan hasil evaluasi, meskipun hanya bekerja pada frekuensi detak 1,5 MHz dan mengandung kesalahan perancangan, RISC-1 terbukti mampu mengeksekusi program bahasa C lebih cepat dari beberapa prosesor CISC, yakni MC68000, Z8002, VAX-11/780, dan PDP-11/70.
Hampir bersamaan dengan proses fabrikasi RISC-1, tim Berkeley lain mulai bekerja untuk merancang RISC-2. Cip yang dihasilkan tidak lagi mengandung kesalahan sehingga mencapai kecepatan operasi yang ditargetkan, 330 nanosekon tiap instruksi (Heudin, 1992 : 27-28).
RISC-2 hanya memerlukan luas cip 25% dari yang dibutuhkan RISC-1 dengan 75% lebih banyak register. Meskipun perangkat instruksi yang ditanamkan sama dengan perangkat instruksi yang dimiliki RISC-1, tetapi di antara keduanya terdapat perbedaan mikroarsitektur perangkat kerasnya. RISC-2 memiliki 138 buah register yang disusun sebagai 8 jendela register, dibandingkan dengan 78 buah register yang disusun sebagai 6 jendela register. Selain itu, juga terdapat perbedaan dalam hal organisasi alur-pipa (pipeline) . RISC-1 memiliki alur-pipa dua tingkat sederhana dengan penjeputan (fetch) dan eksekusi instruksi yang dibuat tumpang-tindih, sedangkan RISC-2 memiliki 3 buah alur-pipa yang masing-masing untuk penjemputan instruksi, pembacaan operan dan eksekusinya, dan penulisan kembali hasilnya ke dalam register.
Sukses kedua proyek memacu tim Berkeley untuk mengerjakan proyek SOAR (Smalltalk on RISC) yang dimulai pada tahun 1983. Tujuan proyek ini adalah untuk menjawab pertanyaan apakah arsitektur RISC bekerja baik dengan bahasa pemrograman Smalltalk? Jadi proyek SOAR ini merupakan upaya pertama menggunakan pendekatan RISC untuk pemrosesan simbolik.
Versi pertama mikroprosesor SOAR diimplementasikan dengan menggunakan teknologi NMOS 4 mikron. Cip yang dihasilkan memiliki 35.700 buah transistor dan bekerja dengan kecepatan 300 nanosekon tiap instruksi. Versi kedua yang dirancang pada 1984-1985 menggunakan teknologi CMOS (Complementary Metal-oxide Semiconductor). Beberapa prosesor berarsitektur RISC banyak yang dipengaruhi oleh rancangan mikroprosesor SOAR, misalnya mikroprosesor SPARC (dari Sun Microsystems Inc.) dan KIM20 yang dirancang Departemen Pertahanan Perancis.
Mengikuti proyek SOAR, kelompok Berkeley kemudian mengerjakan proyek SPUR (Symbolic Processing Using RISC) yang dimulai tahun 1985. Proyek SPUR bertujuan untuk merancang stasiun-kerja (workstation) multiprosesor sebagai bagian dari riset tentang pemrosesan paralel (Robinson, 1987 : 145). Selain itu, proyek SPUR juga melakukan penelitian tentang rangkaian terpadu, arsitektur komputer, sistem operasi, dan bahasa pemrograman. Sistem prosesor SPUR dibangun dengan 6-12 prosesor berkinerja tinggi yang dihubungkan satu sama lain, serta dihubungkan dengan memori dan peranti masukan/keluaran melalui Nubus yang telah dimodifikasi. Unjuk kerja sistem diperbaiki dengan menambahkan chace sebesar 128 kilobyte pada tiap prosesor untuk mengurangi kepadatan lalu lintas data pada bus dan mengefektifkan pengaksesan memori (Heudin, 1992 : 31).
Perangkat instruksi prosesor MIPS terdiri atas 31 buah instruksi yang dibagi menjadi 4 kelompok, yakni kelompok instruksi isi dan simpan, kelompok instruksi operasi aritmetika dan logika, kelompok instruksi pengontrol, dan kelompok instruksi lain-lain. MIPS menggunakan lima tingkat alur-pipa tanpa perangkat keras saling-kunci antar alur-pipa tersebut, sehingga kode yang dieksekusi harus benar-benar bebas dari konflik antar alur-pipa.
Direalisasi dengan teknologi NMOS 2 mikron, prosesor MIPS yang memiliki 24.000 transistor ini memiliki kemampuan mengeksekusi satu instruksi setiap 500 nanodetik. Karena menggunakan lima tingkat alur-pipa bagian kontrol prosesor MIPS ini menyita luas cip dua kali lipat dibanding dengan bagian kontrol pada prosesor RISC. MIPS memiliki 16 register dibandingkan dengan 138 buah register pada RISC-2. Hal ini bukan masalah penting karena MIPS memang dirancang untuk mebebankan kerumitan perangkat keras ke dalam perangkat lunak sehingga menghasilkan perangkat keras yang jauh lebih sederhana dan lebih efisien. Perangkat keras yang sederhana akan mempersingkat waktu perancangan, implementasi, dan perbaikan bila terjadi kesalahan.
Sukses perancangan MIPS dilanjutkan oleh tim Stanford dengan merancang mikroprosesor yang lebih canggih, yakni MIPS-X. Perancangan dilakukan oleh tim riset MIPS sebelumnya ditambah 6 orang mahasiswa, dan dimulai pada musim panas tahun 1984. Rancangan MIPS-X banyak diperbaruhi oleh MIPS dan RISC-2 dengan beberapa perbedaan utama :
Sama seperti MIPS, MIPS-X merupakan prosesor dengan alur-pipa tanpa saling-kunci (interlock) perangkat keras. Perangkat lunaknya dirancang untuk mengikuti pewaktuan instruksi agar tidak terjadi konflik antar alur-pipa (Heudin, 1992 : 36-37).
Cip pertama yang dihasilkan bekerja baik dengan detak 16 MHz, lebih rendah dari target yang dicanangkan setinggi 20 MHz, akibat tidak sempurnanya instruksi percabangan. Versi 25 MHz dibuat dengan menggunakan teknologi CMOS 1,6 mikron. Ditambah dengan chace yang diintregrasikan pada cip prosesor, MIPS-X berisi hampir 150.000 transistor di atas keping seluas 8 x 8,5 mm (Heudin, 1992 : 38).
bersambung ke Arah Perkembangan Prosesor RISC