FLASH

I love indonesia

Pages

Selasa, 10 Juni 2014

ARSITEKTUR RISC DAN CISC

RISC (Reduced Instruction Set Computer)
    RISC adalah singkatan dari Reduced Instruction Set Computer yang artinya prosesor tersebut memiliki set instruksi program yang lebih sedikit. Karena perbedaan keduanya ada pada kata set instruksi yang kompleks atau sederhana (reduced).
   Konsep RISC pertama kali dikembangkan oleh IBM pada era 1970-an. Komputer pertama yang menggunakan RISC adalah komputer mini IBM 807 yang diperkenalkan pada tahun 1980. Dewasa ini, RISC digunakan pada keluarga processor buatan Motorola (PowerPC) dan SUN Microsystems (Sparc, UltraSparc).
     RISC dikembangkan melalui seorang penelitinya yang bernama John Cocke, beliau menyampaikan bahwa sebenarnya kekhasan dari komputer tidaklah menggunakan banyak instruksi, namun yang dimilikinya adalah instruksi yang kompleks yang dilakukan melalui rangkaian sirkuit.
      Pada desain chip mikroprosesor jenis ini, pemroses diharapkan dapat melaksanakan perintah-perintah yang dijalankannya secara cepat dan efisien melalui penyediaan himpunan instruksi yang jumlahnya relatif sedikit, dengan mengambil perintah-perintah yang sangat sederhana, akibatnya arsitektur RISC membatasi jumlah instruksinya yang dipasang ke dalam mikroprosesor tetapi mengoptimasi setiap instruksi sehingga dapat dilaksanakan dengan cepat.
     Dengan demikian instruksi yang sederhana dapat dilaksanakan lebih cepat apabila dibandingkan dengan mikroprosesor yang dirancang untuk menangan susunan instruksi yang lebih luas.
     Dengan demikian chip RISC hanya dapat memproses instruksi dalam jumlah terbatas, tetapi instruksi ini dioptimalkan sehingga cepat dieksekusi. Meski demikian, bila harus menangani tugas yang kompleks, instruksi harus dibagi menjadi banyak kode mesin, terutama sebelum chip RISC dapat menanganinya. Karena keterbatasan jumlah instruksi yang ada padanya, apabila terjadi kesalahan dalam pemrosesan akan memudahkan dalam melacak kesalahan tersebut.

Beberapa elemen penting pada arsitektur RISC :
  • Set instruksi yang terbatas dan sederhana
  • Register general-purpose yang berjumlah banyak, atau penggunaan
  • Teknologi kompiler untuk mengoptimalkan pemakaian registernya
  • Penekanan pada pengoptimalan pipeline instruksi
Aspek komputasi yang ditinjau dalam merancang mesin RISC adalah sebagai berikut:
  • Operasi-operasi yang dilakukan: Hal ini menentukan fungsi-fungsi yang akan dilakukan oleh CPU dan interaksinya dengan memori
  • Operand-operand yang digunakan: Jenis-jenis operand dan frekuensi pemakaiannya akan menentukan organisasi memori untuk menyimpannya dan mode pengalamatan untuk mengaksesnya
  • Pengurutan eksekusi:  Hal ini akan menentukan kontrol dan organisasi pipeline Implikasi
Hasil-hasil penelitian secara umum dapat dinyatakan bahwa terdapat tiga buah elemen yang menentukan karakter arsitektur RISC
  • Pertama, penggunaan register dalam jumlah yang besar. Hal ini dimaksudkan untuk mengoptimalkan pereferensian operand
  • Kedua, diperlukan perhatian bagi perancangan pipeline instruksi. Karena tingginya proporsi instruksi pencabangan bersyarat dan prosedur call, pipeline instruksi yang bersifat langsung dan ringkas akan menjadi tidak efisien
  • Ketiga, terdapat set instruksi yang disederhanakan (dikurangi)
Keinginan untuk mengimplementasikan keseluruhan CPU dalam keping tunggal akan
merupakan solusi Reduced Instruction Set.
Ciri-ciri RISC :
  • Instruksi berukuran tunggal Ukuran yang umum adalah 4 byte
  • Jumlah mode pengalamatan data yang sedikit, biasanya kurang dari lima buah
  • Tidak terdapat pengalamatan tak langsung
  • Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmatika (misalnya, penambahan dari memori, penambahan ke memori)



CISC (Complex Intruction Set Computer)
     CISC adalah singkatan dari Complex Intruction Set Computer dimana prosessor tersebut memiliki set instruksi yang kompleks dan lengkap. Contoh-contoh prosesor CISC adalah System/360, VAX, PDP-11, varian Motorola 68000 , dan CPU AMD dan Intel x86.CISC memang memiliki instruksi yang complex dan memang dirasa berpengaruh pada kinerjanya yang lebih lambat. CISC menawarkan set intruksi yang powerful, kuat, tangguh, maka tak heran jika CISC memang hanya mengenal bahasa asembly yang sebenarnya ia tujukan bagi para programmer. Oleh karena itu ,CISC hanya memerlukan sedikit instruksi untuk berjalan.
     Sistem mikrokontroler selalu terdiri dari perangkat keras (hardware) dan perangkat lunak (software). Perangkat lunak ini merupakan deretan perintah atau instruksi yang dijalankan oleh prosesor secara sekuensial. Instruksi itu sendiri sebenarn ya adalah bit-bit logik 1 atau 0 (biner) yang ada di memori program. Angka-angka biner ini jika lebarnya 8 bit disebut byte dan jika 16 bit disebut word. Deretan logik biner inilah yang dibaca oleh prosesor sebagai perintah atau instruksi. Supaya lebih singkat, angka biner itu biasanya direpresentasikan dengan bilangan hexa (HEX). Tetapi bagi manusia, menulis program dengan angka biner atau hexa sungguh merepotkan. Sehingga dibuatlah bahasa assembler yang direpresentasikan dengan penyingkatan kata-kata yang cukup dimengerti oleh manusia.
Jadi sebenarnya tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin.


Mikroprosesor
     Mikroprosesor adalah suatu komponen yang berbentuk chip IC (Integrated Circuit) yang terdiri dari beberapa rangkaian yaitu ALU (Arithmatic Logic Unit), CU ( Control Unit), dan Register. Mikroprosesor juga disebut juga sebagai CPU (Central Processing Unit) dan merupakan komponen yang sangat penting di dalam sistem komputer. Mikroprosesor berfungsi sebagai pusat untuk memproses data di dalam sistem komputer.


Bagian terpenting dari prosesor terbagi menjadi 3 yaitu :
  • Aritcmatics Logical Unit (ALU), adalah alat yang melakukan pelaksanaan dasar seperti pelaksanaan aritmatika (tambahan, pengurangan, dan semacamnya), pelaksanaan logis (AND, OR, NOT), dan pelaksanaan perbandingan (misalnya, membandingkan isi sebanyak dua slot untuk kesetaraan). Pada unit inilah dilakukan "kerja" yang nyata;
  • Control Unit (CU), merupakan suatu alat pengontrolan yang berada dalam komputer yang memberitahukan unit masukan mengenai jenis data, waktu pemasukan, dan tempat penyimpanan didalam primary storage. Control unit juga bertugas memberitahukan kepada arithmatic logic unit mengenai operasi yang harus dilakukan, tempat data diperoleh, dan letak hasil ditempatkan Perangkat-perangkat alat proses bersertaperlengkapan;
  • Memory Unit (MU), merupakan bagian dari processor yang menyimpan alamat-alamat register data yang diolah oleh ALU dan CU.


Arsitektur Komputer
   Arsitektur Komputer adalah sebuah ilmu untuk tujuan perancangan sintem komputer. Tujuan seorang arsitek komputer adalah merancang sebuah sistem dengan kinerja yang tinggi dengan biaya yang layak, memenuhi persyaratan-persyaratan lainnya. “Arsitektur Komputer” memberikan berbagai atribut pada sistem komputer yang dibutuhkan oleh seorang perancang software sistem untuk mengembangkan suatu progaram. 
     Arsitektur komputer mengacu pada rancangan internal dari rangkaian komputer. Termasuk di dalamnya jumlah dan tipe komponen yang menampilkan kemampuan komputasi. Arsitektur komputer sangat tergantung pada kegunaan komputer itu sendiri. Kecepatan pemrosesan diukur dari jumlah instruksi yang dapat diproses oleh computer setiap detiknya, biasanya dalam satuan million instruksi per detik (MIPS). Untuk mempermudah pengenalan kecepatan pemrosesan sering dicantumkan berupa angka frekuensi, misalnya 233 MHz, 400 MHz, 533B MHz dan yang terbaru yang beredar di pasaran dikeluarkan Intel adalah 3,2 GHz. Memori utama mengacu pada penyimpan internal komputer sehingga bisa digunakan untuk mengakses dan menjalankan program. Memori utama bisa mengakses dengan lebih baik jika ditopang dengan media penyimpanan yang besar. Hal tersebut berkaitan dengan adanya virtual memory pada media penyimpanan yang biasanya digunakan untuk pengaksesan suatu program (swap).
    Pada jaman modern saat ini, hampir semua komputer mengadopsi arsitektur yang dibuat oleh John von Neumann (1903-1957).
Kunci utama arsitektur von Neumann adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal.
Pada dasarnya komputer arsitektur Von Neumann adalah terdiri dari elemen sebagai berikut:


Terdapat 4 komponen utama yang saling berhubungan satu sama lain, yaitu:
  • Central Processing Unit (CPU): Bertugas untuk melakukan kontrol dari setiap operasi yang berjalan pada komputer, terkadang secara mudah CPU dapat dikatakan sebagai processor.
  • Main memory: Penyimpanan data.
  • I/O: Merupakan penghubung komponen komputer dengan lingkungan seperti keyboard, mouse yang digunakan oleh pengguna.
  • System interconnection: Mekanisme yang memberikan layanan untuk berkomunikasi antara CPU, Main memory dan I/O. Contoh system interconnection adalah system bus.



Desain CPU

Langkah-langkah yang dilakukan dalam suatu proses desain CPU:
  •  Mendeskripsikan RTN


       Pada tahap ini setiap instruction set didefinisikan secara jelas dengan menggunakan register transfer notation.
  • Menentukan Data Path

         Data path adalah koleksi/kumpulan register tambahan dan register penghubung yang diperlukan dalam proses pengeksekusian suatu instruksi, yang termasuk dalam instruction set, secara keseluruhan. Pada tahap menentukan data path ini, penggunaan RTN akan sangat diperlukan untuk menjelaskan langkah-langkah yang terjadi dalam proses pengeksekusian masing-masing instruksi. Pada tahap ini kita juga harus membuat asumsi tentang bagaimana komponen-komponen hardware bekerja. Kumpulan asumsi-asumsi yang dibuat akan dijadikan spesifikasi bagi disain logika dari perangkat keras data path.
  • Mendesain perangkat keras, sesuai dengan spesifikasi data path

    Untuk melaksanakan tahap ini, desainer harus memikirkan sinyal-sinyal kontrol yang harus di-generate agar suatu langkah dalam urutan proses pengeksekusian suatu instruksi dapat berlangsung, seperti "strobe" untuk me-load register ke bus, dsb.
  • Membuat Control Unit

         Membuat Control Unit yang akan menghasilkan dan mengatur sinyal-sinyal kontrol dalam urutan yang tepat sehingga langkah-langkah dalam urutan proses pengeksekusian instruksi dapat berlangsung dengan benar.

Hal yang harus dipahami dan diingat dengan baik dalam keseluruhan proses desain CPU adalah bahwa setiap langkah menghasilkan spesifikasi-spesifikasi yang harus dipenuhi pada langkah selanjutnya. Konsep awal yang sangat penting adalah perbedaan antara abstract RTN dan concreate RTN:
  • Abstarct RTN menjelaskan perubahan pada programmer-visible registers yang disebabkan oleh pengeksekusian suatu instruksi.
  • Concreate RTN menjelaskan secara detail langkah-langkah register transfer yang terjadi pada data path sehingga menghasilkan perubahan pada programmer-visible registers secara keseluruhan.

Unit kerja dari suatu abstract RTN adalah eksekusi instruksi, sementara langkah-langkah pada concreate RTN berhubungan dengan pulsa clock prosesor.