Minggu, 10 Januari 2016

Tugas Arsitektur Komputer Tentang RISC



RISC (Reduced Instruction Set Computer)

     1. Alasan mengapa digunakannya RISC.
RISC adalah bagian dari arsitektur mikroposesor yang diperkenalkan oleh John Cocke peneliti dari IBM di Yorktown, New York pada tahun 1974, RISC ini berbentuk kecil dan berfungsi untuk negeset istruksi dalam komunikasi diantara arsitektur yang lainnya. Adapun alasan mengapa RISC ini digunakan yaitu karena RISC ini memiliki beberapa kelebiha antara lain :
a.       Berkaitan dengan penyederhanaan kompiler, dimana tugas pembuat kompiler untuk menghasilkan rangkaian instruksi mesin bagi semua pernyataan HLL. Instruksi mesin yang kompleks seringkali sulit digunakan karena kompiler harus menemukan kasus-kasus yang sesuai dengan konsepnya. Pekerjaan mengoptimalkan kode yang dihasilkan untuk meminimalkan ukuran kode, mengurangi hitungan eksekusi instruksi, dan meningkatkan pipelining jauh lebih mudah apabila menggunakan RISC dibanding menggunakan CISC.
b.      Arsitektur RISC yang mendasari PowerPC memiliki kecenderungan lebih menekankan pada referensi register dibanding referensi memori, dan referensi register memerlukan bit yang lebih sedikit sehingga memiliki akses eksekusi instruksi lebih cepat.
c.       Kecenderungan operasi register ke register akan lebih menyederhanakan set instruksi dan menyederhanakan unit kontrol serta pengoptimasian register akan menyebabkan operand-operand yang sering diakses akan tetap berada dipenyimpan berkecepatan tinggi.
d.      Penggunaan mode pengalamatan dan format instruksi yang lebih sederhana.
  2. Karakteristik RISC.
Karakteristik dari RISC yaitu :
a.       Siklus mesin ditentukan oleh waktu yang digunakan untuk mengambil dua buah operand dari register, melakukan operasi ALU, dan menyimpan hasil operasinya kedalam register, dengan demikian instruksi mesin RISC tidak boleh lebih kompleks dan harus dapat mengeksekusi secepat mikroinstruksi pada mesin-mesin CISC. Dengan menggunakan instruksi sederhana atau instruksi satu siklus hanya dibutuhkan satu mikrokode atau tidak sama sekali, instruksi mesin dapat dihardwired. Instruksi seperti itu akan dieksekusi lebih cepat dibanding yang sejenis pada yang lain karena tidak perlu mengakses penyimapanan kontrol mikroprogram saat eksekusi instruksi berlangsung.
b.      Operasi berbentuk dari register-ke register yang hanya terdiri dari operasi load dan store yang mengakses memori . Fitur rancangan ini menyederhanakan set instruksi sehingga menyederhanakan pula unit control. Keuntungan lainnya memungkinkan optimasi pemakaian register sehingga operand yang sering diakses akan tetap ada di penyimpan berkecepatan tinggi. Penekanan pada operasi register ke register merupakan hal yang unik bagi perancangan RISC.
c.       Penggunaan mode pengalamatan sederhana, hampir sama dengan instruksi menggunakan pengalamatan register,. Beberapa mode tambahan seperti pergeseran dan pe-relatif dapat dimasukkan selain itu banyak mode kompleks dapat disintesis pada perangkat lunak dibanding yang sederhana, selain dapat menyederhanakan sel instruksi dan unit kontrol.
d.      Penggunaan format-format instruksi sederhana, panjang instruksinya tetap dan disesuaikan dengan panjang word. Fitur ini memiliki beberapa kelebihan karena dengan menggunakan field yang tetap pendekodean opcode dan pengaksesan operand register dapat dilakukan secara bersama-sama
3. Ciri – Ciri RISC dan CISC.
a.       Ciri ciri RISC :
1.      Instruksi berukuran tunggal  Ukuran yang umum adalah 4 byte
2.      Jumlah bit bagi integer register spesifier sama dengan 5 atau lebih, artinya sedikitnya 32 buah register integer dapat direferensikan sekaligus secara eksplisit. Jumlah bit floating point register spesifier sama dengan 4 atau lebih, artinya sedikitnya 16 register floating point dapat direferensikan sekaligus secara eksplisit. Beberapa prosesor implementasi dari arsiteketur RISC adalah AMD 29000, MIPS R2000, SPARC, MC 88000, HP PA, IBM RT/TC, IBM RS/6000, intel i860, Motorola 88000 (keluarga Motorola), PowerPC G5.
3.      Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmatika
4.      Tidak mendukung perataan sembarang bagi data untuk operasi load/ store
5.      Jumlah maksimum pemakaian memori manajemen bagi suatu alamat data adalah sebuah instruksi .
6.      Tidak terdapat pengalamatan tak langsung yang mengharuskan melakukan sebuah akses memori agar memperoleh alamat operand lainnya dalam memori.
7.      Tidak terdapat lebih dari satu operand beralamat memori per instruksi.
b.      Ciri – ciri CISC :
1.      Banyak terdapat perintah bahasa mesin
2.      Jumlah instruksi banyak
3.      Instruksi lebih kompleks
4. Proses pipelining pada RISC
Pipelining adalah prosesor baru untuk arsitektur superscalar komputasi. Ini didasarkan pada cara yang mudah dan pipeline yang biasa, struktur yang dapat mendukung beberapa ALU untuk lebih efisien dalam pengiriman dari bagian beberapa instruksi. Daftar nilai arus yang berputar di sekitar pipa, dibuat oleh dependensi data lokal. Selama operasi normal, kontrol sirkuit tidak berada pada jalur yang kritis dan kinerja hanya dibatasi oleh data harga. Operasi mengalir dengan interval waktu sendiri. Ide utama dari Pipeline Prosesor yang berputar adalah circular uni-arah mengalir dari memori register oleh pusat waktu logika dan proses secara parallel dari operasi ALU. Dan proses pipelining pada RISC yaitu :
a.       Mengambil instruksi dan membuffferkannya
b.      Ketika tahapan kedua bebas tahapan pertama mengirimkan instruksi yang dibufferkan tersebut .
c.       Pada saat tahapan kedua sedang mengeksekusi instruksi, tahapan pertama memanfaatkan siklus memori yang tidak dipakai untuk mengambil dan membuffferkan instruksi berikutnya .

Instuksi pipeline:

Karena untuk setiap tahap pengerjaan instruksi, komponen yang bekerja berbeda, maka dimungkinkan untuk mengisi kekosongan kerja di komponen tersebut.Sebagai contoh :

Instruksi 1: ADD  AX, AX

Instruksi 2: ADD EX, CX

Setelah CU menjemput instruksi 1 dari memori (IF), CU akan menerjemahkan instruksi tersebut(ID). Pada menerjemahkan instruksi  1 tersebut, komponen IF tidak bekerja. Adanya teknologi pipeline menyebabkan IF akan menjemput instruksi 2 pada saat ID menerjemahkan instruksi 1. Demikian seterusnya pada saat CU menjalankan instruksi 1 (EX), instruksi 2 diterjemahkan (ID).

 Cara kerja RISC :




Minggu, 03 Januari 2016

Tugas Pertemuan 12



Soal
 1. Jelaskan fungsi sistem operasi !
     Jawab :
     Sistem operasi memiliki fungsi sebagai berikut :
a.       Sebagai tool yang yang menghubungkan perangkat keras dengan pengguna sehingga dapat digunakan.
b.      Mengelola sumber daya seperti CPU, memori, disk drive, keyboard, mouse, dan perangkat lainnya.
c.       Mengatur jalannya semua aktivitas dalam computer baik itu penggunaan aplikasi ataupun aktivaitas yang berhubungan dengan hardware.
d.      Melayani segala sesuatu yang dibutuhkan pengguna.
e.       Sebagai pengendali akses baik terhadap sistem atau aplikasi.
       2. Dalam membedakan jenis sistem operasi adalah berdasarkan sifat eksekusinya, sebutkan dan jelaskan  
           jenisnya !
    Jawab :
a.       Sistem Interaktif
·         Dalam sistem ini pengguna berinteraksi secara langsung dengan computer menggunakan keyboar, mouse untuk meminta eksekusi atau membentuk instruksi.
·         Mesin ini biasanya  beroperasi dari sebuah console, yang terdiri dari tampilan, switch, beberapa bentuk input, dan printer.
·         Program - program yang berbentuk kode mesin dimuatkan melalui perangkat input (misalnya, pembaca kartu).
·         Bila sebuah error menghentikan program, maka kondisi error ditandai dengan nyala lampu.
·         Sistem ini memiliki dua kelemahan utama, yaitu masalah penjadwalan operasi dan waktu setup yang lama.
b.      Sistem Batch :
·         Sistem Batch merupakan kebalikan dari sistem interaktif.
·         Program pengguna ditampung bersama sama dengan program lainya, kemudian diserahkan kepada operator komputer.
·         Setelah program diselesaikan, hasilnya dicetak. Sistem ini sudah jarang digunakan terutama untuk batch murni.
·         Untuk sistem batch yang sederhana biasanya tidak efisien pada penggunaan prosessor, karena terdapat banyak waktu tunggu bagi prosessor. Hal ini terjadi karena perangkat I/O yang lambat. Untuk sistem batch yang canggih, kondisi menunggu tersebut digunakan untuk mengerjakan program lainnya. 
       3. Dalam sistem batch terdapat Single-programming & Multi-programming. Jelaskan 2 hal tersebut !
     Jawab :
a.       Single – Programming
Adalah mesin batch yang hanya menjalankan satu program saja. Hal ini sangat tidak efisien karena prosessor banyak menunggu (idel).
b.      Multi-programming
Adalah sistem batch yang dimaksudkan untuk menjaga prosessor selalu berada dalam keadaan sibuk dengan mengharuskan prosessor menjalankan lebih dari satu program pada satu saat.
       4. Jelaskan tentang translation lookside buffer !
    Jawab :
·         Pada prinsipnya, setiap referensi ke virtual memori terdapat dua jenis akses, yaitu akses untuk mengambil page table entry yang diinginkan dan akses untuk pengambilan datanya.
·         Akibat hal ini terjadi penggandaan waktu akses yang menurunkan kinerja.
·         Solusi persoalan penggadaan waktu akses adalah dengan translation lookaside buffer (TLB).
·         Yang harus diperhatikan juga, TLB harus berinteraksi dengan sistem cache memori utama.
·         Pertama, sistem akan memeriksa TLB untuk mengetahui apakah page table entry yang cocok tersedia, bila ada maka alamat fisik (real) akan dibuat dengan mengkombinasikan nomor frame dengan offset.
·         Bila tidak ada, enry diakses dari page table. Setelah alamt real dibuat, yang berbentuk sebuah tag dan reminder,cache diperiksa untuk mengetahui keberadaan blok yang berisi word tersebut.
·         Bila ada, maka akan dikembalikan ke CPU. Sedangkan bila tidak ada , word akan dicari di memori utama. 
       5. Jelaskan tentang swapping, partitioning,paging,virtual memory !
     Jawab :
a.       Swapping :
·         Kondisi dimana memiliki antrian panjang permintaan proses,yang umunya tersimpan dalam memori utama.
·         Apabila proses telah selesai, maka proses - proses tersebut akan dikeluarkan dari memori utama.
·         Sekarang, situasinya yang terjadi adalah tidak ada proses didalam memori utama yang siap, daripada prosessor idle maka prosessor akan melakukan swap salah satu tersebut kembali ke disk diantrian menengah. Antrian ini merupakan antrian proses yang telah dikeluarkan sementara dari memori. 
·         Kemudian sistem operasi mengambil proses lain dari antrian menengah, atau ememnuhi permintaan proses yang baru dari antrian panjang.
·         Setelah itu eksekusi akan dilanjutkan dengan memproses proses yang baru tiba.
·         Swapping merupakan operasi I/O, karenanya dapat membuat keadaan menjadi buruk, namun karena I/O disk umumnya mampu meningkatakn kinerja prosessor.  
b.      Partitioning
·         Sistem Operasi akan menempati bagian memori yang tetap.
·         Sisa memori dibagi - bagi untuk keperluan sejumlah proses.
·         Partitioning adalah teknik membagi memori menjadi beberapa bagian sesuai kebutuhan.
·         Terdapat dua macam partisi, yaitu partisi tetap (fixed size partitioning) dan partisi variabel (variable size partitioning).  

c.       Paging
·         Penggunaan partisi tidak cukup efisien dalam penggunaan memori.
·         Terdapat metode lain yang disebut paging.
·         Paging adalah membagi memori utama menjadi frame - frame kecil berukuran sama.
·         Setiap proses dibagi menjadi page - page berukuran sama sengan frame. Proses yang lebih kecil membutuhkan page yang lebih sedikit, sedangkan proses - proses besar akan memerlukan page yang lebih banyak.
·         Ketika sebuah proses dibawa kedalam memori, page - page nya dimuatkan ke dalam frame yang tersedia dan kemudian page tabel dibentuk.Page tabel digunakan untuk mengubah alamat logik menjadi alamat fisik dan juga sebaliknya.
d.      Virtual Memory
·         Apabila ada sebuah program besar maka akan tidak efektif apabila semua page dari program tersebut diletakkan dalam memori utama.
·         Hanya page yang akan digunakan saja yang dimuatkan dalam memori utama membuat kinerja memori lebih baik.
·         Apabila page yang akan dieksekusi tidak didapatkan di memori utama, maka sinya page fault diaktifkan.
·         Sinyal ini menyatakan bahwa sistem operasi harus mengambil page yang dimaksud.
·         Karena proses hanya mengeksekusi di dalam memori utama saja, maka memeori tersebut disebut real memory.
·         Namun pemrogram atau pengguna dapt menggunakan memori yang lebih besar, yang dikenal sebagai virtual memory.
·         Memory Virtual ( Virtual Memory ) merupakan solusi efektif bagi pengguna atau pemrogram sehubungan masalah keterbatasan memori utama.