Jumat, 26 Desember 2014

PROSES PENGOLAHAN DATA PADA CPU

Proses pengolahan data dan siklus operasional eksekusi instruksi pada CPU pada umumnya terdapat 2 cara / langkah, yaitu : fetch atau instruksi baca CPU dari memori dan lalu CPU mengeksekusi setiap instruksi. Fetch instruksi adalah operasi umum bagi setiap instruksi dan terdiri dari pembacaan instruksi dari suatu lokasi didalam memori, sedangkan eksekusi instruksi dapat melibatkan sejumlah operasi dan tergantung dari sifat-sifat instruksi.

Eksekusi sebuah instruksi terdiri dari sejumlah langkah. Pada tahap ini pengolahan instruksi dibagi 2 tahap :
1. fetch
2. eksekusi
Dan eksekusi program akan terhenti apabila :
- Terdapat instruksi program yang menghentikan komputer
- Mesin dimatikan, dan
- Terjadi kesalahan

Siklus-siklus Fetch dan Eksekusi
Proses Awalnya :
- CPU Membaca instruksi dari memori
- PC (Program Counter) dipakai untuk mengawasi instruksi yang akan dibaca selanjutnya.
- CPU selalu menambahkan PC setiap kali membaca instruksi
- Instruksi yang dibaca dimuatkan kedalam register didalam CPU yaitu IR (Instruction register)

Proses pengolahan data :
Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama kali diletakkan di RAM, apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage. Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter. Sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register (dalam hal ini di Operand-register). Jika berdasar instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di Accumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices.


Suumber : 

ARSITEKTUR KOMPUTER

Arsitektur komputer dapat didefinisikan dan dikategorikan sebagai ilmu dan sekaligusseni mengenai cara interkoneksi komponen-komponen perangkat keras untuk dapat menciptakan sebuah komputer yang memenuhi kebutuhan fungsional, kinerja, dan target biayanya. Dalam bidang teknik komputer, arsitektur komputer adalah konsep perencanaan dan struktur pengoperasian dasar dari suatu sistem komputer. Arsitektur komputer ini merupakan rencana cetak-biru dan deskripsi fungsional dari kebutuhan bagian perangkat keras yang didesain (kecepatan proses dan sistem interkoneksinya). Dalam hal ini, implementasi perencanaan dari masing–masing bagian akan lebih difokuskan terutama, mengenai bagaimana CPU akan bekerja, dan mengenai cara pengaksesan data dan alamat dari dan ke memori cache, RAM, ROM, cakram keras, dll).

KLASIFIKASI ARSITEKTUR KOMPUTER
1.      Arsitektur Von Neumann
Arsitektur von Neumann (atau Mesin Von Neumann) adalah arsitektur yang diciptakan oleh John von Neumann (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini. Arsitektur Von Neumann menggambarkan komputer dengan empat bagian utama: Unit Aritmatika dan Logis (ALU), unit kontrol, memori, dan alat masukan dan hasil (secara kolektif dinamakan I/O). Bagian ini dihubungkan oleh berkas kawat, “bus”.
d
Pada perkembangan komputer modern, setiap prosesor terdiri dari atas :
1. Arithmetic and Logic Unit  (ALU)
Arithmatic and Logic Unit atau Unit Aritmetika dan Logika berfungsi untuk melakukan semua perhitungan aritmatika (matematika) dan logika yang terjadi sesuai dengan instruksi program. ALU menjalankan operasi penambahan,  pengurangan, dan operasi-operasi sederhana lainnya pada input-inputnya dan memberikan hasilnya pada registeroutput.
2. Register.
Register merupakan alat penyimpanan kecil yang  mempunyai kecepatan akses cukup tinggi, yang  digunakan untuk menyimpan data dan instruksi yang  sedang diproses, sementara data dan instruksi lainnya yang menunggugiliran untukdiproses masihdisimpan yang menunggugiliran untukdiproses masihdisimpan di dalam memori utama. Setiap register dapat menyimpan satu bilangan hingga mencapai jumlah maksimum tertentu tergantung pada ukurannya.
3. Control Unit
Control Unit atau Unit Kontrol berfungsi untuk mengatur dan mengendalikan semua peralatan yang ada pada sistem komputer. Unit kendali akan mengatur kapan alat input  menerima data dan kapan data diolah serta kapan ditampilkan pada alat output. Unit ini juga mengartikan instruksi-instruksi dari program. Unit ini juga mengartikan instruksi-instruksi dari program komputer, membawa data dari alat input ke memori utama dan mengambil data dari memori utama untuk diolah. Bila ada instruksi untuk perhitungan aritmatika atau  perbandingan logika, maka unit kendali akan mengirim  instruksi tersebut ke ALU. Hasil dari pengolahan data  dibawa oleh unit kendali ke memori utama lagi untuk  disimpan, dan pada saatnya akan disajikan ke alat output.
4. Bus
Bus adalah sekelompok lintasan sinyal yang digunakan untuk menggerakkan bit-bit informasi dari satu tempat ke tempat lain, dikelompokkan menurut fungsinya Standar bus dari suatu sistem komputer adalah bus alamat (address bus), bus data (data bus) dan bus kontrol (control bus). Komputer menggunakan suatu bus atau saluran bus sebagaimana kendaraan bus yang mengangkut penumpang dari satu tempat ke tempat lain, maka bus komputer mengangkut data. Bus komputer menghubungkan CPU pada RAM dan periferal. Semua komputer menggunakan saluran busnya untuk maksud yang sama.
Arsitektur RISC
RICS singkatan dari Reduced Instruction Set Computer. Merupakan bagian dari arsitektur mikroprosessor, berbentuk kecil dan berfungsi untuk negeset istruksi dalam komunikasi diantara arsitektur yang lainnya. Reduced Instruction Set Computing (RISC) atau “Komputasi set instruksi yang disederhanakan” pertama kali digagas oleh John Cocke, peneliti dari IBM di Yorktown, New York pada tahun 1974 saat ia membuktikan bahwa sekitar 20% instruksi pada sebuah prosesor ternyata menangani sekitar 80% dari keseluruhan kerjanya. Komputer pertama yang menggunakan konsep RISC ini adalah IBM PC/XT pada era 1980-an. Istilah RISC sendiri pertama kali dipopulerkan oleh David Patterson,pengajar pada University of California di Berkely.
Karakteristik RISC
  • 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
  • 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
  • Penggunaan mode pengalamatan sederhana, hampir sama dengan instruksi menggunakan pengalamatan register.
  • Penggunaan format-format instruksi sederhana, panjang instruksinya tetap dan disesuaikan dengan panjang word.
Arsitektur CISC

Complex instruction-set computing atau Complex Instruction-Set Computer (CISC) “Kumpulan instruksi komputasi kompleks”) adalah sebuah arsitektur dari set instruksi dimana setiap instruksi akan menjalankan beberapa operasi tingkat rendah, seperti pengambilan dari memory, operasi aritmetika, dan penyimpanan ke dalam memory, semuanya sekaligus hanya di dalam sebuah instruksi. Karakteristik CISC dapat dikatakan bertolak-belakang dengan RISC.
Karakteristik CISC
  • Sarat informasi memberikan keuntungan di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang. Karena CISC inilah biaya pembuatan komputer pada saat itu (tahun 1960) menjadi jauh lebih hemat
  • Dimaksudkan untuk meminimumkan jumlah perintah yang diperlukan untuk mengerjakan pekerjaan yang diberikan. (Jumlah perintah sedikit tetapi rumit) Konsep CISC menjadikan mesin mudah untuk diprogram dalam bahasa rakitan

Arsitektur Harvard

Arsitektur Havard menggunakan memori terpisah untuk program dan data dengan alamat dan bus data yang berdiri sendiri. Karena dua perbedaan aliran data dan alamat, maka tidak  diperlukan multiplexing  alamat dan bus data. Arsitektur ini tidak hanya didukung dengan bus paralel untuk alamat dan data, tetapi juga menyediakanorganisasiinternal yang  berbeda sedemikian rupa instruksi dapat diambil dan dikodekan ketika dan data, tetapi juga menyediakan organisasi internal yang  berbeda sedemikian rupa instruksi dapaLebih lanjut lagi, bus data bisa saja memiliki ukuran yang berbeda  dari bus alamat. Hal ini memungkinkan pengoptimalan bus data dan bus alamat dalam pengeksekusian instruksi yang cepat.t diambil dan dikodekan ketika berbagai data sedang diambil dan dioperasikan. Sebagai contoh, mikrokontroler Intel keluarga MCS-51 menggunakan arsitektur Havard karena ada perbedaan kapasitas memori untuk program dan data, dan bus terpisah (internal) untuk alamat dan data.  Begitu juga dengan keluarga PIC dari Microchip yang menggunakan arsitektur Havard.

Arsitektur Blue Gene

Blue Gene adalah sebuah arsitektur komputer yang dirancang untuk menciptakan beberapa superkomputer generasi berikut, yang dirancang untuk mencapai kecepatan operasi petaflop (1 peta = 10 pangkat 15), dan pada 2005 telah mencapai kecepatan lebih dari 100 teraflop (1 tera = 10 pangkat 12). Blue Gene merupakan proyek antara Departemen Energi Amerika Serikat (yang membiayai projek ini), industri (terutama IBM), dan kalangan akademi. Ada lima projek Blue Gene dalam pengembangan saat ini, di antaranya adalah Blue Gene/L, Blue Gene/C, dan Blue Gene/P.
Komputer pertama dalam seri Blue Gene. Blue Gene/L dikembangkan melalui sebuah “partnership” dengan Lawrence Livermore National Laboratory menghabiskan biaya AS$100 juta dan direncanakan dapat mencapai kecepatan ratusan TFLOPS, dengan kecepatan puncak teoritis 360 TFLOPS. Ini hampir sepuluh kali lebih cepat dari Earth Simulator, superkomputer tercepat di dunia sebelum Blue Gene. Pada Juni 2004, dua prototipe Blue Gene/L masuk dalam peringkat 500 besar superkomputer berada dalam posisi ke-4 dan ke-8.
MODEL-MODEL KOMPUTASI ARSITEKTUR KOMPUTER
SISD
Yang merupakan singkatan dari Single Instruction, Single Data adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja. Oleh karena itu model ini bisa dikatakan sebagai model untuk komputasi tunggal. Sedangkan ketiga model lainnya merupakan komputasi paralel yang menggunakan beberapa processor. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.
SIMD

Yang merupakan singkatan dari Single Instruction, Multiple Data. SIMD menggunakan banyak processor dengan instruksi yang sama, namun setiap processor mengolah data yang berbeda. Sebagai contoh kita ingin mencari angka 27 pada deretan angka yang terdiri dari 100 angka, dan kita menggunakan 5 processor. Pada setiap processor kita menggunakan algoritma atau perintah yang sama, namun data yang diproses berbeda. Misalnya processor 1 mengolah data dari deretan / urutan pertama hingga urutan ke 20, processor 2 mengolah data dari urutan 21 sampai urutan 40, begitu pun untuk processor-processor yang lain. Beberapa contoh komputer yang menggunakan model SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP, Thingking Machine CM-2 dan Cell Processor (GPU
MISD
Yang merupakan singkatan dari Multiple Instruction, Single Data. MISD menggunakan banyak processor dengan setiap processor menggunakan instruksi yang berbeda namun mengolah data yang sama. Hal ini merupakan kebalikan dari model SIMD. Untuk contoh, kita bisa menggunakan kasus yang sama pada contoh model SIMD namun cara penyelesaian yang berbeda. Pada MISD jika pada komputer pertama, kedua, ketiga, keempat dan kelima sama-sama mengolah data dari urutan 1-100, namun algoritma yang digunakan untuk teknik pencariannya berbeda di setiap processor. Sampai saat ini belum ada komputer yang menggunakan model MISD.
MIMD
Yang merupakan singkatan dari Multiple Instruction, Multiple Data. MIMD menggunakan banyak processor dengan setiap processor memiliki instruksi yang berbeda dan mengolah data yang berbeda. Namun banyak komputer yang menggunakan model MIMD juga memasukkan komponen untuk model SIMD. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.
f
Singkatnya untuk perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini:
Gambar 1 : Penyelesaian Sebuah Masalah pada Komputasi Tunggal
Gambar 2: Penyelesaian Sebuah Masalah pada Komputasi Paralel
Dari perbedaan kedua gambar di atas, kita dapat menyimpulkan bahwa kinerja komputasi paralel lebih efektif dan dapat menghemat waktu untuk pemrosesan data yang banyak daripada komputasi tunggal.
Dari penjelasan-penjelasan di atas, kita bisa mendapatkan jawaban mengapa dan kapan kita perlu menggunakan komputasi paralel. Jawabannya adalah karena komputasi paralel jauh lebih menghemat waktu dan sangat efektif ketika kita harus mengolah data dalam jumlah yang besar. Namun keefektifan akan hilang ketika kita hanya mengolah data dalam jumlah yang kecil, karena data dengan jumlah kecil atau sedikit lebih efektif jika kita menggunakan komputasi tunggal.

SOP DAN POS PADA PETA KARNAUGH

1.  Peta Karnaugh Suku Minterm (SOP – Sum of Product)
Misal didapat persamaan :
       a.)    F = m0 + m1

http://adf.ly/kaJtI                                  











Maka pemetaannya

http://adf.ly/kaJtI

F      = m0 + m1
     = A’B’C’ + A’B’C
   = (A’+A’)(B’+B’)(C’+C)
   = A’.B’.1
   = A’B’

b.)    F = A’B’C’ + A’B’C +A’BC +A’BC’

http://adf.ly/kaJtI


F   = A’B’C’ + A’B’C +A’BC +A’BC’
     = (A’+A’+A’+A’).(B’+B’+B+B).
        (C’+C+C+C’)
     = A’.1.1
     = A’




c.)     F = A’B’C + A’BC + AB’C + ABC      
   



F  = A’B’C + A’BC + AB’C + ABC
     = C




d.)    F = A’B’C’ + AB’C’ + A’BC’ + ABC’




F = A’B’C’ + AB’C’ + A’BC’ + ABC’
     = C’






Contoh Soal Minterm :
 1. Sederhanakan F = A’B’C’ + A’B’C + A’BC + A’BC’ + A’B’C + A’BC + AB’C + ABC




F =   A’B’C’ + A’B’C + A’BC + A’BC’ + A’B’C
        + A’BC + AB’C + ABC
   = (A’B’C’ + A’B’C + A’BC + A’BC’)
      + (A’B’C + A’BC + AB’C + ABC)
   = (A’) + (C)
   = A’ + C



2.       Sederhanakan diagram logika berikut

http://adf.ly/kaJtI


Jawab :

Output =       I    +   II     +  III
                               = A’B’C + AB’C + AB’C’


http://adf.ly/kaJtI


Output   = A’B’C + AB’C + AB’C’
              = (A’B’C + AB’C) + (AB’C’
                   + AB’C)
              = B’C + AB’





Sehingga dapat disederhanakan menjadi :
http://adf.ly/kaJtI 


                                                                    
2.  Peta Karnaugh Suku Maxterm (POS - Product of Sum)
Seperti halnya pada minterm pada maxterm metodenya hampir sama namun nilai 1 dianggap sebagai invers dari input sedangkan input menggunakan nilai 0.
Misal didapat persamaan :
a.) F = M6 . M7

Maka pemetaannya







 F = M6 . M7
     = (A’+B’+C) . (A’+B’+C’)
    = (A’.A’)+(B’.B’)+(C.C’)
    = A’+ B’+ 0
    = A’+B’

b.) F = (A’+B+C) . (A’+B+C’) . (A’+B’+C’) . (A’+B’+C)



F = (A’+B+C) . (A’+B+C’).
      (A’+B’+C’) . (A’+B’+C)
   = A’





c.) F = (A+B+C) (A+B’+C) (A’+B+C) (A’+B’+C)      




F  = (A+B+C) (A+B’+C)
       (A’+B+C) (A’+B’+C)
     = C





d.) F = (A+B+C’)  (A+B’+C’) (A’+B+C’) (A’+B’+C’)




F = (A+B+C’) (A+B’+C’)
      (A’+B+C’) (A’+B’+C’)
   = C’





Soal Maxterm :
1. Sederhanakan F = (A’+B+C).(A’+B”C)


F = (A’+B+C).(A’+B’+C)
   = A’+ C







2. Sederhanakan peta karnaough dibawah dan buat diagram output penyederhanaannya!


F = [ (A+B+C)(A+B’+C) ] . [ (A+B’+C’)
         (A+B’+C)(A’+B’+C’)(A’+B’+C) ]
   = [A+C].[B’]
   = (A+C).B’








Kesimpulan :
Dari contoh minterm dan maxterm terdapat beberapa kesamaan jika ditinjau menurut peta dan hasil penyederhanaan. Hal ini dapat dilihat pada:

1. Contoh 1 minterm


           F = A’ + C








Contoh 1 Maxterm



F = (A’+B+C).(A’+B’+C)
   = A’+ C





Dari bentuk peta karnaugh yang sama namun perhitungan berbeda (minterm dan maxterm) memiliki hasil F yang sama diantara keduanya.
Sehingga pada dasarnya suatu peta karnaugh dapat diselesaikan menggunakan dua metode yaitu maxterm atau minterm sesuai kebutuhan.

2. Pada contoh soal 2 tidak jauh beda









Jika ditinjau dari persamaan boolean maka keduanya memiliki nilai yang sama :

B’.(A+C) = B’C + B’A

Namun jika dilihat dari segi efisiensi komponen maka maxterm lebih efisien (1 “OR” dan 1 “And”) dibanding minterm ( 2 “And” dan 1 “OR”). Namun bukan berarti minterm lebih boros dari maxterm hal ini tergantung dari hasil akhir perhitungan kedua metode.