Minggu, 05 Oktober 2014

Contoh Eksekusi Perintah Pada Komputer

Contoh Proses Ekesekusi Program

Gambar 1. Contoh Proses Ekesekusi Program
Keterangan Gambar :
  • Program Counter (PC) = Address of Instruction
  • Instruction Register (IR) = Instruction being Executed
  • Accumulator (AC) = Temporary Storage
Berikut ini penjelasan gambar 1.
  1. Pada Step 1, PC berisi angka 300 dimana angka 300 didapat dari alamat perintah pertama yang diberkan dari memory. Kemudian, perintah dalam bentuk hexadecimal (1940) masuk ke dalam IR sehingga nilai IR menjadi 1940.
  2. Pada Step 2, setelah IR berisi nilai 1940, hal tersebut mengindikasikan AC harus diisi dengan nilai pada alamat 940. Mengapa 940 yang dipilih? Bukan alamat lain seperti 450, 560 atau lainnya, hal tersebut terjadi karena nilai AC yang harus diisi mengikuti nilai dari IR itu sendiri. Dengan kata lain, nilai AC akan menyesuaikan dengan nilai yang terdapat pada IR karena kita akan mengambil 3 digits hexadecimal yang terdapat pada IR.  Dalam contoh ini, nilai IR 1940, maka yang diambil ada nilai yang berada pada alamat 1940 (940), yaitu 0003.
  3. Perintah selanjutnya (5941) di dapat dari alamat 301 sehingga PC akan bernilai menjadi 301 dan IR bernilai 5941. AC akan mengambil nilai yang terdapat pada alamat 941. Namun, AC tidak berubah seperti PC dan IR, AC akan ditambkan dengan nilai yang sebelumnya sudah ada. Sehingga nilai AC saat ini menjadi 0005 (0002+0003). Mengapa AC tidak berubah mutlak atau ditambahkan, karena AC sendiri merupakan penyimpanan sementara sehingga nilainya akan ditambahkan sampai program selesai dieksekusi.
  4. Perintah selanjutnya (2941) yang di dapat dari alamat 302, maka PC bernilai 302 dan IR bernilai 2941. Sedangkan AC tetap karena ini adalah akhir dari eksekusi program. Langkah terakhir adalah memindahkan nilai AC ke alamat memori 941.
Penghubung antara Processor, Memory dan I/O adalah Bus. Sebuah perintah dapat berpindah dari Processor ke Memory, I/O ke processor dan lainnya dapat terjadi karena adanya Bus. Bentuk bus dalam sebuah komponen komputer adalah berupa garis-garis yang menghubungkan antar perangkat. Ada sekitar 50 hingga ribuan garis yang tersusun dalam sebuah komponen komputer. Tiap garis memiliki fungsi yang berbeda sesuai dengan peletakannya. Namun, secara garis besar, Bus dapat diklasifikasikan menjadi 3 grup berdasarkan fungsinya, yaitu data, address dan control. Secara tersirat, Bus dapat digambarkan pada gambar berikut.
Bus Interconnection
Gambar 5. Bus Interconnection


SUMBER: http://iqbalparabi.com/SISTEM-DAN-ARSITEKTUR-KOMPUTER/

Senin, 29 September 2014

Advanced RISC Machines (ARM)

ARM HoldingsProsesor berarsitektur ARM


Tahukah Anda prosesor macam apa yang dipakai iPhone, iPad, serta kebanyakan perangkat Android yang ada di pasar? Kebanyakan perangkat mobilemenggunakan prosesor berarsitektur ARM, sebuah desain arsitektur prosesor karya perusahaan ARM Holdings yang sedang berdiri di puncak kejayaan.

Didirikan pada 1990 dengan nama Advanced RISC Machines (ARM), sebuah perusahaan patungan antara Acorn Computers, Apple Computer (sekarang Apple Inc), dan VLSI Technology. Advanced RISC Machines kemudian berganti nama menjadi ARM Holdings ketika melantai di bursa saham tahun 1998.

Berkantor pusat di Cambridge, Inggris, ARM fokus pada penelitan dan pengembangan desain arsitektur prosesor.

Tak seperti Intel atau AMD yang memproduksi dan menjual prosesor, ARM punya bisnis model yang unik. Mereka hanya menjual lisensi hak kekayaan intelektual atau hak paten desain prosesor kepada perusahaan pemanufaktur semikonduktor, seperti Qualcomm, Nvidia, Texas Instrument, STMicroelectronics, Renesas, Samsung hingga Apple. Bahkan, Intel dan AMD pun membeli lisensi desain ARM.

Ya, arsitektur ARM dijadikan landasan bagi sebagian besar central processing unit (CPU) di kebanyakan perangkat mobile sekarang ini. ARM punya desain arsitektur Cortex seri M, R, A, hingga seri A50. Mereka juga memiliki desain arsitektur untuk graphics processing unit (GPU) bernama Mali.

Menguasai pasar perangkat mobile

Menurut data internal ARM tahun 2010, arsitektur ARM menguasai 95 persen pangsa pasar arsitektur prosesor ponsel pintar, 35 persen televisi digital, dan alat set top boxes,serta 10 persen komputer mobile.

Hampir semua tablet dan ponsel pintar unggulan, baik yang berbasis Android, iOS, BlackBerry, hingga Windows Phone, memakai prosesor arsitektur ARM. Beberapa konsolgame portabel, antara lain Game Boy Advance, Nintendo DS, dan PlayStation Portable, memakai prosesor ARM.

ARM juga punya pangsa pasar, meski kurang dominan, di industri alat pacu jantung sampai alat elektronik untuk memanggang roti.

Irit daya jadi senjata

Karakteristik dari teknologi ARM adalah kemampuan konsumsi daya yang rendah, sehingga membuatnya sangat cocok digunakan di perangkat portabel.

Keunggulan ARM telah membuat Intel seperti kebakaran jenggot. Bagaimana tidak, teknologi sedang bergeser ke arah mobile. Pangsa pasar komputer pribadi, termasuk laptop, sedang mengalami penurunan. Sementara pangsa pasar ponsel pintar dan tablet tumbuh sangat cepat.

Lembaga riset NPD Display Search memprediksi, pengiriman tablet secara global akan melampaui pengiriman komputer laptop pada 2013. Sebanyak 240 juta unit tablet akan dikirimkan ke seluruh belahan dunia, sementara pengiriman laptop hanya 207 unit pada 2013.

Intel berusaha masuk ke industri mobile melalui arsitektur prosesor x86 dalam cip Atom, sebuah desain arsitektur yang juga digunakan untuk prosesor komputer pribadi. Namun, perangkat ponsel pintar yang menggunakan arsitektur x86 jumlahnya masih terbilang sedikit jika dibandingkan dengan ARM.

Hal ini membuat ARM menjadi desain mikroprosesor 32-bit yang paling banyak digunakan di dunia.

Didukung Microsoft, tapi produsen komputer Windows RT setengah hati

Dalam pameran produk elektronik terbesar di Amerika Serikat, Consumer Electronics Show tahun 2011, Microsoft mengatakan bahwa sistem operasi Windows 8 akan berjalan di perangkat dengan prosesor berarsitektur ARM.

Sistem operasi Windows RT didesain khusus untuk prosesor ARM, sementara Windows 8 untuk prosesor x86.

Microsoft memang mendukung ARM, namun produsen komputer terkesan setengah hati memproduksi tablet dengan prosesor ARM.

Samsung, contohnya, yang memiliki tablet Windows RT bernama Ativ Tab, pada Januari 2013 membatalkan rencana meluncurkan Ativ Tab di Amerika Serikat, yang notabene adalah pasar penting. Kemudian bulan Maret, beredar kabar bahwa Samsung menarik produk Ativ Tab dari toko-toko di Jerman dan beberapa pasar Eropa lain.

Menjajaki pasar server

Bermodal teknologi irit daya, ARM mengekspansi bisnis ke pasar komputer server. Hal ini didasarkan atas pemikiran ARM dalam menyediakan arsitektur prosesor yang bisa menekan biaya untuk energi.

Menurut laporan lembaga riset Gartner, konsumsi energi menyumbang 12 persen dari seluruh pengeluaran perusahaan penyedia pusat data (data center). Perusahaan data center mencari alternatif sebuah prosesor yang irit daya, tapi bisa menjaga temperatur agar tetap dingin. ARM bergegas masuk ke sana.

Pada Mei 2012, Dell mengumumkan platform Copper, server yang memakai prosesor Marvell dengan desain ARM.

ARM kemudian mengumumkan lisensi prosesor kemampuan 64-bit dari keluarga Cortex-A57 pada Oktober 2012. Samsung telah membeli lisensi desain ARM 64-bit untuk dirilis pada 2014. Di tahun yang sama, AMD pun hendak membuat cip Opteron berarsitektur ARM.

"Arsitektur untuk Dunia Digital"

ARM Holdings kini dipimpin oleh Warren East sebagai CEO. Setelah dipercaya menduduki posisi tertinggi di ARM selama 12 tahun, East akan pensiun per tanggal 1 Juli 2013. Ia diganti oleh Simon Segars, yang sebelumnya menjabat sebagai Presiden ARM Holdings. 

Segars, pria berusia 45 tahun, punya pengalaman panjang di bidang perangkat keras(hardware). Ia sempat duduk di kursi Wakil Presiden Teknis di ARM yang ikut merancang beberapa desain awal arsitektur prosesor ARM.

Perusahaan ini memiliki kantor dan pusat desain di beberapa negara, termasuk San Jose, California, Austin, Texas, dan Washington di Amerika Serikat, Trondheim di Norwegia, Lund di Swedia, Sophia Antipolis di Perancis, Munich di Jerman, Yokohama di Jepang, China, Taiwan, India, dan Slovenia.

Dalam keterangan di situs web resmi perusahaan, ARM mengklaim telah menjual 30 miliar unit prosesor, lebih dari 16 juta prosesor terjual setiap hari. Perusahaan yang sedang menikmati kejayaan ini memiliki moto "Arsitektur untuk Dunia Digital."

sumber: http://tekno.kompas.com/read/2013/03/20/14413846/mengenal.arm.sang.penguasa.prosesor.mobile

Perbandingan x86 (32-bit) dan x64 (64-bit)

Saya dengar bahwa ada Windows versi 32 bit dan 64 bit. Apa bedanya?
Istilah “bit” merupakan sebuah satuan data. Komputer 32 bit adalah komputer yang dapat memproses 232 data dalam satu waktu. Sedangkan komputer 64 bit adalah komputer yang dapat memproses 264 data dalam satu waktu.
Wow… Jadi, komputer 64 bit memiliki kemampuan memproses yang lebih hebat daripada komputer 32 bit ya?
Benar sekali!
Nah, perlu kamu ingat juga bahwa terkadang 32 bit ditulis sebagai “32-bit” atau “x86” dan 64 bit ditulis sebagai “64-bit” atau “x64”.
Hmm… Berarti, karena ada komputer yang bertipe tipe 32 bit dan 64 bit, maka ada Windows versi 32 bit dan 64 bit juga?
Ya, benar. Untuk komputer 32 bit, ada Windows versi 32 bit. Untuk komputer 64 bit, ada Windows versi 64 bit.
Nah, komputer personal itu sendiri awalnya dikembangkan mulai dari 4 bit, 8 bit, dan kemudian 32 bit. Semenjak akhir tahun 2008, pangsa pasar komputer personal yang bertipe 64 bit mulai semakin meningkat.




Di dunia komputer kita sering mendengar perkataan 32 dan 64 bit. Perkembangan teknologi sangat meningkat dengan pesat, belum lagi puas menikmati produk yang baru, sudah muncul produk yang lebih baru. Sekarang ini dikenal beberapa produk OS seperti:

1. Windows Xp 32 bit
2. Windows Xp 64 bit
3. Windows Vista 32 Bit
4. Windows Vista 64 bit
5. Windows 7 32 bit
6. Windows 7 64 bit
7. Linux 32 bit atau 64 bit

Dalam dunia komputasi personal, 32-bit dan 64-bit mengacu pada jenis unit pengolahan pusat, sistem operasi, driver, program perangkat lunak, dll yang memanfaatkan bahwa arsitektur tertentu. 32-bit hardware dan software sering disebut sebagai x86 atau x86-32. hardware 64-bit dan software sering disebut sebagai x64 atau x86-64.

Banyak orang yang belum mengerti apakah itu perbedaan OS 32 bit dan 64 bit, mereka mendengar bahwa software os 64 bit lebih bagus dari 32 bit, dan mereka langsung membeli, tapi ketika mereka hendak menginstall di komputer mereka, ternyata os tersebut tidak bisa diinstall pada komputer mereka, mengapa??

Untuk memahami hal tersebut pada posting kali ini akan dibahas apa itu sebenarnya 32 bit dan 64 bit. System 32-bit memanfaatkan data dalam potongan 32-bit sedangkan sistem 64-bit memanfaatkan data dalam potongan 64-bit. Secara umum, semakin banyak data yang dapat diolah sekaligus, sistem semakin cepat beroperasi. Ada beberapa keuntungan lainnya untuk sistem 64-bit juga, paling praktis untuk kemampuan menggunakan jumlah data yang secara signifikan lebih besar dari memori fisik.

Tetapi penggunaan software OS 32 bit dan Os 64 bit harus mengikuti hardware yang mendukung apakah komputer anda siap untuk menggunakan OS 64 bit atau hanya dapat menggunakan OS 32 bit saja. Kebanyakan prosesor lama saat didasarkan pada arsitektur 32-bit dan 32-bit tidak dapat menggunakan system OS 64 bit. Dengan perkembangan teknologi, saat ini banyak prosessor diciptakan pada arsitektur 64 bit dan mendukung sistem operasi. Prosesor ini juga sepenuhnya kompatibel dengan sistem operasi 32-bit.

           Sedikit keterangan tentang processor 32 bit dengan 54 bit, pada dasarnya cara komputer menyimpan data atau membuat referensi untuk data, memori, dll dalam bentuk bit dengan nilai 1 atau 0, itu disebut “digit biner”. Jadi kode biner aliran 1 dan 0, seperti urutan acak 100100100111. Bit-bit ini juga menunjukkan bagaimana prosesor Anda melakukan perhitungan. Dengan menggunakan prosesor 32 bit Anda dapat mewakili nomor dari 0 sampai 4.294.967.295 sementara untuk processor 64-bit dapat mewakili angka 0 sampai 18.446.744.073.709.551.615.

sumber: 
http://fadly354.wordpress.com/2010/11/10/pengertian-sistem-operasi-32-bit-vs-64-bit/
http://acehbarat-ect.blogspot.com/p/perbedaan-x86-32-bit-dengan-x64-64-bit.html

Perbandingan CISC & RISC

Cara sederhana untuk melihat kelebihan dan kelemahan dari arsitektur RISC (Reduced Instruction Set Computers) adalah dengan langsung membandingkannya dengan arsitektur pendahulunya yaitu CISC (Complex Instruction Set Computers).

Perkalian Dua Bilangan dalam Memori

Pada bagian kiri terlihat sebuah struktur memori (yang disederhanakan) suatu komputer secara umum. Memori tersebut terbagi menjadi beberapa lokasi yang diberi nomor 1 (baris): 1 (kolom) hingga 6:4. Unit eksekusi bertanggung-jawab untuk semua operasi komputasi. Namun, unit eksekusi hanya beroperasi untuk data-data yang sudah disimpan ke dalam salah satu dari 6 register (A, B, C, D, E atau F). Misalnya, kita akan melakukan perkalian (product) dua angka, satu disimpan di lokasi 2:3 sedangkan lainnya di lokasi 5:2, kemudian hasil perkalian tersebut dikembalikan lagi ke lokasi 2:3.

Pendekatan CISC
             Tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan, instruksi akan membaca dua nilai dan menyimpannya ke 2 register yag berbeda, melakukan perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register yang benar. Jadi instruksi-nya cukup satu saja.
MULT 2:3, 5:2
MULT dalam hal ini lebih dikenal sebagai “complex instruction”, atau instruksi yang kompleks. Bekerja secara langsung melalui memori komputer dan tidak memerlukan instruksi lain seperti fungsi baca maupun menyimpan.
Satu kelebihan dari sistem ini adalah kompailer hanya menerjemahkan instruksi-instruksi bahasa tingkat-tinggi ke dalam sebuah bahasa mesin. Karena panjang kode instruksi relatif pendek, hanya sedikit saja dari RAM yang digunakan untuk menyimpan instruksi-instruksi tersebut.

Pendekatan RISC
       Prosesor RISC hanya menggunakan instruksi-instruksi sederhana yang bisa dieksekusi dalam satu siklus. Dengan demikian, instruksi ‘MULT’ sebagaimana dijelaskan sebelumnya dibagi menjadi tiga instruksi yang berbeda, yaitu “LOAD”, yang digunakan untuk memindahkan data dari memori ke dalam register, “PROD”, yang digunakan untuk melakukan operasi produk (perkalian) dua operan yang berada di dalam register (bukan yang ada di memori) dan “STORE”, yang digunakan untuk memindahkan data dari register kembali ke memori. Berikut ini adalah urutan instruksi yang harus dieksekusi agar yang terjadi sama dengan instruksi “MULT” pada prosesor RISC (dalam 4 baris bahasa mesin):
LOAD-A,2:3
LOAD-B,5:2
PROD-A,B
STORE 2:3, A
         Awalnya memang kelihatan gak efisien iya khan? Hal ini dikarenakan semakin banyak baris instruksi, semakin banyak lokasi RAM yang dibutuhkan untuk menyimpan instruksi-instruksi tersebut. Kompailer juga harus melakukan konversi dari bahasa tingkat tinggi ke bentuk kode instruksi 4 baris tersebut.

CISC
RISC
Penekanan pada
perangkat keras
Penekanan pada
perangkat lunak
Termasuk instruksi
kompleks multi-clock
Single-clock, hanya
sejumlah kecil instruksi
Memori-ke-memori:
“LOAD” dan “STORE”
saling bekerjasama
Register ke register:
“LOAD” dan “STORE”
adalah instruksi2 terpisah
Ukuran kode kecil,
kecepatan rendah
Ukuran kode besar,
kecepatan (relatif) tinggi
Transistor digunakan untuk
menyimpan instruksi2
kompleks
Transistor banyak dipakai
untuk register memori















           Bagaimanapun juga, strategi pada RISC memberikan beberapa kelebihan. Karena masing-masing instruksi hanya membuthukan satu siklus detak untuk eksekusi, maka seluruh program (yang sudah dijelaskan sebelumnya) dapat dikerjakan setara dengan kecepatan dari eksekusi instruksi “MULT”. Secara perangkat keras, prosesor RISC tidak terlalu banyak membutuhkan transistor dibandingkan dengan CISC, sehingga menyisakan ruangan untuk register-register serbaguna (general purpose registers). Selain itu, karena semua instruksi dikerjakan dalam waktu yang sama (yaitu satu detak), maka dimungkinkan untuk melakukan pipelining.

Memisahkan instruksi “LOAD” dan “STORE” sesungguhnya mengurangi kerja yang harus dilakukan oleh prosesor. Pada CISC, setelah instruksi “MULT” dieksekusi, prosesor akan secara otomatis menghapus isi register, jika ada operan yang dibutuhkan lagi untuk operasi berikutnya, maka prosesor harus menyimpan-ulang data tersebut dari memori ke register. Sedangkan pada RISC, operan tetap berada dalam register hingga ada data lain yang disimpan ke dalam register yang bersangkutan.

Persamaan Unjuk-kerja (Performance)
Persamaan berikut biasa digunakan sebagai ukuran unjuk-kerja suatu komputer:
      Pendekatan CISC bertujuan untuk meminimalkan jumlah instruksi per program, dengan cara mengorbankan kecepatan eksekusi sekian silus/detik. Sedangkan RISC bertolak belakang, tujuannya mengurangi jumlah siklus/detik setiap instruksi dibayar dengan bertambahnya jumlah instruksi per program.

Penghadang jalan (Roadblocks) RISC
     Walaupun pemrosesan berbasis RISC memiliki beberapa kelebihan, dibutuhkan waktu kurang lebih 10 tahunan mendapatkan kedudukan di dunia komersil. Hal ini dikarenakan kurangnya dukungan perangkat lunak.
     Walaupun Apple’s Power Macintosh menggunakan chip berbasis RISC dan Windows NT adalah kompatibel RISC, Windows 3.1 dan Windows 95 dirancang berdasarkan prosesor CISC. Banyak perusahaan segan untuk masuk ke dalam dunia teknologi RISC. Tanpa adanya ketertarikan komersil, pengembang prosesor RISC tidak akan mampu memproduksi chip RISC dalam jumlah besar sedemikian hingga harganya bisa kompetitif.
      Kemerosotan juga disebabkan munculnya Intel, walaupun chip-chip CISC mereka semakin susah digunakan dan sulit dikembangkan, Intel memiliki sumberdaya untuk menjajagi dan melakukan berbagai macam pengembangan dan produksi prosesor-prosesor yang ampuh. Walaupun prosesor RISC lebih unggul dibanding Intel dalam beberapa area, perbedaan tersebut kurang kuat untuk mempengaruhi pembeli agar merubah teknologi yang digunakan.

Keunggulan RISC
     Saat ini, hanya Intel x86 satu-satunya chip yang bertahan menggunakan arsitektur CISC. Hal ini terkait dengan adanya kemajuan teknologi komputer pada sektor lain. Harga RAM turun secara dramatis. Pada tahun 1977, DRAM ukuran 1MB berharga %5,000, sedangkan pada tahun 1994 harganya menjadi sekitar $6. Teknologi kompailer juga semakin canggih, dengan demikian RISC yang menggunakan RAM dan perkembangan perangkat lunak menjadi semakin banyak ditemukan.


sumber: http://agfi.staff.ugm.ac.id/blog/index.php/2008/12/risc-vs-cisc/

ARSITEKTUR KOMPUTER HARVARD

Arsitektur Harvard memiliki dua memori yang terpisah satu untuk program (ROM) dan satu untuk data (RAM), yang mana arsitektur ini merupkan kebalikkan dari arsitektur komputer model von nuemann, jika von neuman mengabungkan ROM dan RAM menjadi satu maka arsitektur harvard maka kedua memori tersebut dipisahkan.

Diagram Arsitektur Komputer Model Harvard
Gambar

Kelebihan Arsitektur Komputer Model Harvard
a. bandwidth program tidak mesti sama dengan bandwidth  data
b. opcode dan operand dapat dijadikan dalam satu word instruksi saja
c. instruksi dapat dilakukan dengan lebih singkat dan cepat
d. memori program dan data yang terpisah,  maka kavling total memori program dan data dapat menjadi lebih banyak.

Kekurangan Arsitektur Komputer Model Harvard
a. arsitektur Harvard tidak memungkinkan untuk menempatkan data pada ROM.
b. arsitektur in tidak memungkinkan untuk mengakses data yang ada di ROM

sumber: http://zaenalnursalam.wordpress.com/2012/11/05/arsitektur-komputer-model-harvard/

ARSITEKTUR KOMPUTER VON NEUMANN

Arsitektur von Neumann (Mesin Von Neumann) adalah arsitektur yang diciptakan oleh John von Neumann (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini. Dengan unit sederhana ini, sebuah software yang rumit, seperti software pengolah kata Dapat dibuat. Arsitektur Von Neumann menyediakan fitur penyimpanan dan modifikasi program secara mudah.


Mesin von Neumann mempunyai program dan data daerah memory yang sama. Model ini membutuhkan berbagai pengumpulan program dan data untuk membentuk instruksi. Pengumpulan program dan data diselesaikan menggunakan time division multiplexing yang akan berpengaruh pada performa mikrokontroler itu sendiri.

Diagram Arsitektur von Neumann




Cara Kerja Von Neumann Nomor ( 1 – 2 )
Ada dua unit operasi dasar dalam mesin ini : ALU dan I/O,
• ALU melakukan inti operasi : perkalian, penjumalahan, pengurangan, dll.
• Unit I/O menangani aliran data eksternal.

Kunci utama arsitektur von Neumann adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal. Adapun cara kerja model Von Neumann, yaitu :
-   Main memory menyimpan data dan program
-   BUS mentransfer data, alamat dan mengontrol signal. Baik itu dari atau ke memory maupun dari atau ke perangkat lainnya.
-   CPU
-   Control Unit menangkap intruksi dan mengeksekusinya.
-   ALU (Arithmetic Logic Unit) melakukan operasi (menambah, mengurangi, dll)
-   Register 9Fast Memory) menyimpan hasil sementara dan informasi kontrol (alamat instruksi berikutnya).
-   Perangkat I/O menjadi tepat penghubung antara user dan komputer.

Cara Kerja Von Neumann Nomor ( 3 )
Cara kerjanya adalah satu CPU mengeksekusi instruksi satu persatu dan menjemput atau menyimpan data satu persatu. Adapun karakteristik model SIMD ini :
    - Mendistribusi proses ke sejumlah besar hardware.
    - Beroperasi terhadap berbagai elemen data yang berbeda
    - Melaksanakan komputasi yang sama terhadap semua elemen data

Kelebihan & Kekurangan Model Von Neumann

Kelebihan Von Neumann adalah pada fleksibilitas pengalamatan program dan data. Biasanya program selalu ada di (ROM=Read Only Memory ) dan data selalu ada di (RAM=Random Access Memory). Arsitektur Von Neumann memungkinkan prosesor untuk menjalankan program yang ada didalam memori data (RAM). Misalnya pada saat power on, dibuat program inisialisasi yang mengisi byte di dalam RAM. Data di dalam RAM ini pada gilirannya nanti akan dijalankan sebagai program. Sebaliknya data juga dapat disimpan di dalam memori program (ROM).

Kekurangan Arsitektur Von Neumann adalah bus tunggalnya itu sendiri. Sehingga instruksi untuk mengakses program dan data harus dijalankan secara sekuensial dan tidak bisa dilakukan overlaping untuk menjalankan dua isntruksi yang berurutan. Selain itu bandwidth program harus sama dengan banwitdh data. Jika memori data adalah 8 bits maka program juga harus 8 bits. Satu instruksi biasanya terdiri dari opcode (instruksinya sendiri) dan diikuti dengan operand (alamat atau data). Karena memori program terbatas hanya 8 bits, maka instruksi yang panjang harus dilakukan dengan 2 atau 3 bytes. Misalnya byte pertama adalah opcode dan byte berikutnya adalah operand. Secara umum prosesor Von Neumann membutuhkan jumlah clock CPI (Clock per Instruction) yang relatif lebih banyak dan walhasil eksekusi instruksi dapat menjadi relatif lebih lama.

sumber: sopyanaulia.wordpress.com/von-neuman/

Senin, 22 September 2014

CONTROL UNIT


         Unit kontrol (bahasa Inggris: Control Unit - CU) adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan / kendali / kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut.Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut.Pada awal-awal desain komputer, CU diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Beberapa word dari microprogram dipilih oleh microsequencer dan bit yang datang dari word-word tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya (supervisor).

Tugas dari CU adalah sebagai berikut:
1.      Mengatur dan mengendalikan alat-alat input dan output.
2.      Mengambil instruksi-instruksi dari memori utama.
3.      Mengambil data dari memori utama kalau diperlukan oleh proses.
4.      Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan    logika serta mengawasi kerja.

5.      Menyimpan hasil proses ke memori utama.

Proses tiga langkah karakteristik unit control:
1.      Menentukan elemen dasar prosesor
2.      Menjelaskan operasi mikro yang akan dilakukan prosesor
3.      Menentukan fungsi-fungsi yang harus dilakukan unit control agar menyebabkan pembentukan operasi mikro

     Masukan-masukan unit control:
1.    Clock / pewaktu
pewaktu adalah cara unit control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro (atau sejumlah operasi mikro yang bersamaan) dibentuk bagi setiap pulsa waktu. Pulsa ini dikenal sebagai waktu siklus prosesor.
2.    Register instruksi
opcode instruksi saat itu digunakan untuk menentukan operasi mikro mana yang akan dilakukan selama siklus eksekusi.
3.    Flag
flag ini diperlukan oleh unit control untuk menentukan status prosesor dan hasil operasi ALU sebelumnya.
4.    Sinyal control untuk mengontrol bus
Bagian bus control bus system memberikan sinyal-sinyal ke unit control, seperti sinyal-sinyal interupsi dan acknowledgement.

Keluaran-keluaran unit control:
1.      Sinyal control didalam prosesor: terdiri dari dua macam: sinyal-sinyal yang menyebabkan data dipindahkan dari register yang satu keregister yang lainnya, dan sinyal-sinyal yang dapat mengaktifasi fungsi-fungsi ALU tertentu
2.      Sinyal control bagi bus control; sinyal ini juga terdiri dari dua macam: sinyal control bagi memori dan sinyal control bagi modu-modul I/O

Didalam isi Control Unit, akan terlihat bahwa komponen ini tersusun atas 3 komponen yang lebih kecil, yaitu :
a.            Sequence Logic.
b.            Control Unit Memory
c.            Control Unit Register dan Decoder.
Sequence Logic merupakan rangkaian digital yang digerakkan untuk mengatur urutan operasi internal CPU, sedangkan penggeraknya adalah program atau mikro program yang ditanam pada Control Unit Memory
Control Unit Register and Decoder berperan sebagai register tempat meletakkan dan menterjemahkan instruksi. Instruksi tersebut adalah salah satu instruksi yang dapat dipahami oleh prosesor atau CPU tersebut di atas. Ringkasnya, Control Unit merupakan prosesor skala mini dengan kecepatan tinggi yang diprogram untuk mengendalikan CPU. Sedangkan CPU merupakan prosesor yang diprogram untuk mengendalikan operasi sistem komputer.



Macam-macam CU
1.      Single-Cycle CU
          Proses di Single-Cycle CU ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satucycle, maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control linehanya merupakan fungsi dariopcode saja. Clock cycle harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses men-decode opcode untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (branching). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”. Desain single-cycle ini lebih dapat bekerja dengan baik dan benar tetapi cycle ini tidak 
efisien.

2.      Multi-Cycle CU
         Berbeda dengan unit kontrol yangsingle-cycle, unit kontrol yangmulti-cycle lebih memiliki banyak fungsi. Dengan memperhatikan statedan opcode, fungsi boolean dari masing-masing output control line dapat ditentukan.Masing-masingnya akan menjadi fungsi dari 10 buah input logic. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bitopcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU.

Implementasi Unit Kontrol
  Ø  Implementasi hardwired
Unit kontrol merupakan rangkaian kombinatorial. Sinyal-sinyal logika inputnya akan didekodekan menjadi sinyal-sinyal logika output, yang merupakan sinyal-sinyal kontrol ke sistem komputer. Sinyal-sinyal input tersebut, seperti clock, flag, register instruction, dan sinyal kontrol merupakan input bagi unit kontrol untuk mengetahui status komputer. Sinyal keluaran yang dihasilkan akan mengendalikan sistem kerja komputer.
N buah input biner akan menghasilkan 2N output biner. Setiap instruksi memiliki opcode yang yang berbeda-beda. Opcode yang berbeda dalam instruksi akan menghasilkan sinyal kontrol yang berbeda pula. Pewaktu unit control mengeluarkan rangkaian pulsa yang periodik. Pulsa waktu ini digunakan untuk mengukur durasi setiap operasi mikro yang dijalankan CPU, intinya digunakan untuk sinkronisasi kerja masing-masing bagian.

Masalah dalam Merancang Implementasi Hardwired:
1.      Memiliki kompleksitas dalam pengurutan dan operasi mikronya
2.      Sulit didesain dan dilakukan pengetesan
3.      Tidak fleksibel
4.      Sulit untuk menambahkan instruksi baru

Jadi secara garis besar:
1.      Intinya unit control merupakan rangkaian kombinatorial
2.      Sinyal-sinyal logika inputnya akan dikodekan menjadi sekumpulan sinyal-sinyal logika output yang merupakan sinyal-sinyal kontrol ke system computer
3.      Input unit control meliputi sinyal-sinyal register instruksi,pewaktu, flag dan sinyal bus control
4.      Sinyal-sinyal tersebut sebagai masukkan bagi unit control dalam mengetahui status computer
5.      Selanjutnya dikodekan manghasilkan sinyal keluaran untuk mengendalikan system kerja computer
6.      n buah input biner akan menghasilkan 2n output biner.
7.      setiap instruksi memiliki opcode yang berbeda – beda.opcode yang berbeda dalam setiap instruksi akan menghasilkansinyal control yang berbeda pula
8.      pewaktu unit control mengeluarkan rangkaian pulsa yang periodic

  Ø  Implementasi microprogrammed
      Implementasi yang paling reliabel saat ini adalah implementasi microprogrammed. Unit kontrol memerlukan sebuah memori untuk menyimpan program kontrolnya. Fungsi–fungsi pengontrolan dilakukan berdasarkan program kontrol yang tersimpan pada unit kontrol. Selain itu, fungsi–fungsi pengontrolan tidak berdasarkan dekode dari input unit kontrol lagi. Teknik ini dapat menjawab kesulitan–kesulitan yang ditemui dalam implementasi hardwired.

Jadi secara garis besar:
1.      Unit control memerlukan sebuah memori untuk menyimpan program controlnya
2.      Fungsi-fungsi pengontrolan dilakukan berdasarkan program control yang tersimpan pada unit control.Fungsi-fungsi pengontrolan tidak berdasarkan decode dari input unit control lagi
3.      Teknik ini dapat menjawab kesulitan-kesulitan yang ditemui dalam implementasi hardwired

     CARA KERJA CONTROL UNIT
        Ketika sebuah komputer pertama kali diaktifkan power-nya, maka computer tersebut menjalankan operasi bootstrap. Operasi ini akan membaca sebuah instruksi dari suatu lokasi memory yang telah diketahui sebelumnya dan mentransfer instruksi tersebut ke control unit untuk dieksekusi. Instruksi-intruksi dibaca dari memory dan dieksekusi sesuai dengan urutan penyimpanannya. Program counter dari suatu computer menyediakan suatu cara untuk menyimpan lokasi instruksi berikutnya. Urutan eksekusi berubah dengan memindah lokasi intruksi baru ke program counter sebelum pembacaan (fetch) instruksi dikerjakan. Sebuah intruksi merupakan kalimat imperatif pendek yang sudah dapat menjelaskan makna dari perintah tersebut.

Suatu intruksi terdiri dari :
1.      subjek (komputernya)
2.      verb (suatu kode operasi yang mengindikasikan pekerjaan apa yang akan dilaksanakan)
3.      objek (operands) yang mengidentifikasikan nilai data atau lokasi memory.

        Ketika intruksi-intruksi diterima oleh Control Unit, operation code akan mengaktifkan urutan logic untuk mengeksekusi intruksi-intruksi tersebut.
Satu eksekusi program terdiri dari beberapa instruction cycle yang menjadi komponen penyusun dari program tersebut. Sedangkan untuk setiap instruction cycle terdiri dari beberapa sub cycle lagi seperti ftech cycle, indirect cycle, execute cucle, dan interrupt cycle. Setiap sub cycle ini disusun dari beberapa perintah dasar yang disebutmicro operation.

referensi: http://verychenko2116.blogspot.com/2012/07/soal-1.html