Wednesday, July 12, 2017

Review Jurnal - Analysis of Input and Output Ripples of PWM AC Choppers


Review Jurnal
Analysis of Input and Output Ripples of PWM AC Choppers
Teguh Muhazir D. (muhazir.teguh@gmail.com)
Fakultas Teknologi Industri, Teknik Elektro
Universitas Gunadarma

Abstrak. Jurnal yang berjudul “Analysis of Input and Output Ripples of PWM AC Choppers” ini berisi tentang analisis input dan output ripple dari rangkaian AC chopper. Persamaan yang digunakan pada penelitian ini adalah persaman dari arus input dan output serta ripple tegangan dari PWM AC chopper satu fase. Penelitian yang dilakukan pada jurnal ini menggunakan dua jenis rangkaian yaitu PWM AC chopper satu fase dan PWM AC chopper tiga fase. Hasil output dari rangkaian PWM AC chopper satu fase akan diteruskan dengan PWM AC chopper tiga fase, setelah itu digunakan kriteria tambahan pada outputnya untuk menentukan nilai induktansi dan kapasitansi dari filter LC. Untuk menunjukkan validitas dari metode analisis yang digunakan hasil percobaan ditampilkan pada jurnal ini.

Kata Kunci : AC chopper, PWM, ripple, filter LC.


1. Pendahuluan

Power supply ter-regulasi AC telah banyak digunakan pada berbagai macam aplikasi. Regulator tegangan AC menggunakan kontrol fase dengan thyristor adalah jenis regulator tegangan AC yang paling banyak digunakan. Jenis dari regulator tegangan AC ini memiliki beberapa kekurangan yaitu, harmonisa pada arus tinggi dan faktor daya yang rendah pada arus input dan harmonisa tinggi tegangan output. Ada dua cara untuk memecahkan permasalahan tersebut yaitu dengan regulator tegangan AC jenis baru. Regulator tegangan AC dengan metode langsung dan metode tidak langsung. Pada metode tidak langsung keuntungan yang diperoleh adalah tegangan output dapat dikontrol secara independen dari tegangan input, tetapi metode ini memiliki kekurangan yaitu efisiensi yang rendah dikarenakan dua kali proses konversi. Pada metode langsung diimplementasikan dengan Pulse Width Modulation (PWM) AC chopper. Pada metode ini efisiensinya lebih tinggi dibanding metode tidak langsung karena daya hanya diproses sekali. Kekurangan utama dari metode ini adalah frekuensi tegangan output tidak dapat berbeda dari frekuensi tegangan input. Analisis dari input dan output ripple pada jurnal ini sangat penting untuk proses design dari LC filter yang dibutuhkan. Design LC filter yang baik akan memberikan pengaruh yang signifikan pada AC chopper. Jurnal ini memberikan hasil analisis dari input dan output ripple dari PWM AC chopper. Yang pertamakali ditampilkan adalah persamaan dari ripple tegangan dan arus input dan output dari PWM AC chopper satu fase. Analisis fourier dan perhitungan kompleks tidak diperlukan lagi karena bentuk analisis dari persamaan yang dihasilkan sebelumnya. Persamaaan itu lalu dilanjutkan pada PWM AC chopper tiga fase.  Kriteria berdasarkan pada daya reaktif minimum diperlukan karena arus input dan spesifikasi ripple tegangan saja bisa digunakan untuk menentukan nilai induktansi dan kapasitansi dari filter LC. Validitas dari metode analisis yang digunakan ditujukan dengan simulasi dan hasil percobaan.


2. PWM AC Choppers

Pembahasan pada jurnal ini hanya terbatas pada PWM AC chopper tipe buck. Untuk mengurangi harmonisa yang terjadi LC filter dihubungkan dengan sisi input dan output dari AC chopper. Modulasi PWM berbasis carrier digunakan untuk mengontrol PWM AC chopper. Pada gambar 2.2 menunjukkan teknik modulasi berbasis carrier untuk mengontrol PWM AC chopper satu fase. Pada teknik ini ketika frekuensi carrier lebih tinggi daripada tegangan sumber, komponen ripple dari arus sumber dan tegangan beban bisa di filter dengan LC filter kecil yang terhubung dengan sisi input dan output.


Gambar 2.1. Skematik AC chopper (a) satu fase dan (b) tiga fase.

Asumsi yang digunakan pada analisis input dan output ripple dari PWM AC chopper adalah sebagai berikut :

    1.Frekuensi carrier lebih tinggi daripada frekuensi tegangan sumber
    2.Beban merupakan beban linier
    3.Perangkat switching diasumsikan sebagai switch ideal
    4.Parameter LC filter adalah konstan 


Gambar 2.2. Teknik PWM untuk AC chopper satu fase.
 
3. Analisis Ripple pada AC Chopper Satu Fase

3.1 Analisis Ripple Output


Analisis yang dilakukan pada pembahasan bab ini hanya terbatas pada mode konduksi kontinu, juga diasumsikan bahwa tegangan pada input kapasitor sama dengan tegangan sumber. Berikut adalah beberapa persamaan yang digunakan dalam jurnal ini.

Ripple arus output diperoleh dengan persamaan


Ripple arus output induktor diperoleh dengan persamaan

Persamaan diatas menunjukkan ripple arus output induktor berbanding terbalik secara proporsional dengan frekuensi carrier. Ripple arus ini akan maksimum ketika duty factor sama dengan setengah.


Ripple arus kapasitor diperoleh dengan persamaan

Ripple tegangan output diperoleh dengan persamaan

Persamaan diatas menunjukkan ripple tegangan output berbanding terbalik secara proporsional dengan akar dari frekuensi carrier. Hasil dari ripple tegangan output sangat berguna untuk merancang output filter LC yang diperlukan.


3.2 Analisis Ripple Input

Pada analisa ini diasumsikan jika arus outputnya adalah dalam bentuk sinusoidal
Nilai rms dari ripple arus input diperoleh dengan persamaan

Nilai rms dari ripple tegangan kapasitor selama satu periode diperoleh dengan persamaan

Nilai rms dari ripple arus sumbet selama satu periode diperoleh dengan persamaan


Gambar 3.1. Detail Waveform (a) Output dan (b) Input.

4. Analisis Ripple pada AC Chopper Tiga Fase

Topologi sirkuit dari rangkaian AC chopper tiga fase sebelumny telah diperlihatkan pada gambar 2.1 (b). Untuk menyederhanakan analisis ripple output, sirkuit output dari chopper tiga fase dibuat lagi sesuai dengan gambar 4.1.
Gambar 4.1. AC chopper tiga fase.
Ripple arus induktor diperoleh dengan menggunakan persamaan

Untuk mendapatkan ripple arus jalur output induktor, kita dapat menggunakan relasi  antara fase arus dan jalur arus pada sistem tiga fase, kita akan mendapatkan persamaan untuk ripple arus jalur output sebagai berikut

Ripple tegangan output kapasitor dapat diperoleh dengan persamaan

5. Menentukan LC Filter

Untuk menentukan rancangan dari LC filter diperlukan ripple tegangan output dan ripple arus sumber, ripple tersebut ditentukan oleh induktansi dan kapasitansi dari LC filter itu sendiri. Nilai dari induktasi dan kapasitansi tersebut tidak dapat ditentukan. Untuk memecahkan masalah ini kriteria tambahan berdasarkan minimum daya reaktif pada LC filter digunakan.

Daya reaktif pada output LC filter dapat ditentukan dengan persaman

Dimana

Kapasitansi optimum dari output filter dapat diperoleh dengan menyelesaikan persamaan berikut


6. Hasil Percobaan

Pada percobaan digunakan rangkaian pada gambar 2.1(a). Ujicoba dilakukan dengan menggunakan modul transistor sebagai perangkat switching, yang beroperasi pada 1kHz frekuensi switching. Induktansi sebesar 30mH dan kapasitansi 360 µF digunakan sebagai input LC filter, sementara induktansi 10 mH dan kapasitansi 250 µF digunakan sebagai output LC filter. Resistor 5 Ω digunakan sebagai beban pada AC chopper satu fase. Tegangan input tetap pada 35V (50Hz).


Gambar 6.1 menunjukkan hasil output dari arus induktor dan bentuk gelombang tegangan. Arus induktor yang dihasilkan hampir berbentuk sinusoidal. Tegangan output memiliki bentuk sesuai yang diharapkan. Osiloskop digital digunakan untuk menangkap gelombang terhadap satu periode fundamental. Selanjutnya komputer digital digunakan untuk menghitung komponen ripple dari hasilnya.
Gambar 6.1. Gelombang output (a) arus dan (b) tegangan.

Gambar 6.2 dan 6.3 menunjukkan hasil perhitungan dan hasil percobaan ripple arus induktor dan ripple tegangan kapasitor. Garis tebal merupakan perhitungan, sedangkan tanda kotak merupakan hasil percobaan. Angka ini menunjukkan secara jelas persaman antara hasil percobaan dan perhitungan.

Gambar 6.2. Hasil percobaan dan kalkulasi dari ripple arus output induktor.

Gambar 6.3. Hasil percobaan dan kalkulasi dari ripple tegangan output.

Gambar 6.4 dan 6.5 menunjukkan hasil perhitungan dan hasil percobaan dari ripple tegangan input dan arus sumber. Sekali lagi angka ini menunjukkan secara jelas persaman antara hasil percobaan dan perhitungan.

Gambar 6.4. Hasil percobaan dan kalkulasi dari ripple tegangan input.

Gambar 6.5. Hasil percobaan dan kalkulasi dari ripple arus sumber.

Simulasi ekstensif dengan software PSIM telah dilakukan untuk memastikan metode analisis yang digunakan. Berdasarkan hasil simulasi jika beberapa persyaratan berikut dipenuhi maka hasil perhitungan dapat akurat (eror kurang dari 5%) :

    1.Frekuensi switching lebih besar 10 kali dari frekuensi output dasar.
    2.Ripple dari konten harmonisa kuran dari 20%
    3.Frekuensi resonansi dari filter LC kurang dari sepertiga dari frekuensi switching.

7. Kesimpulan
Percobaan dari jurnal ini bertujuan untuk mengatahui bentuk ripple dari tegangan input, arus sumber, tegangan output dan arus output induktor. Ripple arus output induktor dan ripple tegangan input kapasitor bervariasi berkebalikan secara proporsional dengan frekuensi switching. Ripple tegangan output kapasitor dan ripple arus sumber bervariasi berkebalikan secara proporsional dengan kuadrat dari frekuensi switching. Dari grafik hasil percobaan dan perhitungan didapat nilai yang tidak jauh berbeda. Teknik analisis yang digunakan pada jurnal ini berguna untuk proses perancangan LC filter dalam menentukan nilai induktansi dan kapasitansi dari LC filter tersebut.


Referensi
[1]    Addoweesh, K.E. & Mohammadein, A.L., Microprocessor Based Harmonic Elimination in Chopper Type AC Voltage Regulators, IEEE Trans. Power Electr., 5,  pp. 191-200, April 1990.
[2]    Ahmed, N.A., Amei, K. & Sakui, M., A New Configuration of SinglePhase Symmetrical PWM AC Chopper Voltage Controller, IEEE Trans. Ind. Appl., 46, pp. 942-952, Oct. 1999.
[3]    Dahono, P.K., Amiruddin, D., Rizqiawan, A., & Deni, Analysis of Input and Output Ripples of PWM AC Choppers, ITB J. Eng. Sci. Vol. 40, No. 2, pp. 91-109, 2008.
[4]    Jang, D.H. & Choe, G.H., Improvement of Input Power Factor in AC Choppers Using Asymmetrical PWM Technique, IEEE Trans. Ind. Appl., 42,  pp. 179-185, Apr. 1995.
[5]    Srinivasan, S. & Venkataramanan, G., Comparative Evaluation of PWM AC-AC Converters, Proc. IEEE  PESC, pp. 529-535, June 1995.
[6]    Kwon, B.H., Min, B.D. & Kim, J.H., Novel Topologies of AC Chopper, IEE Proc. Eletr. Power. Appl., 143, July 1996.
[7]    Venkataramanan, G., A Family of PWM Converters for Three Phase AC Power Conditioning, Proc. Conf. IEEE Power Electronic, Drives, and Energy System for Industrial Growth, pp. 572-577, June 1996.
[8]    Lefeuvre, E., Meynard, T. & Viarouge, P., Robust Two-Level and Multilevel PWM AC Choppers, Proc. Conf. EPE, pp. 1-8, 2001.
[9]    Fedyczak, Z., Strzelecki, R. & Benysek, G., Single-phase PWM AC/AC Semiconductor Transformer Topologies and Applications, Proc. IEEE PESC, pp. 1048-1053, June 2002.
[10]    Petry, C.A., Fagundes, J.C. & Barbi, I., New Direct Ac-Ac Converters Using Switching Modules Solving the Commutation Problem, Proc. of IEEE ISIE, pp. 864-869, July 2006. [
[11]    Ben-Yaakov, S., Hadad, Y. & Diamantstein, N., A Four Quadrant HF AC Chopper with no Deadtime, Proc.  IEEE  APEC, pp. 1461-1465, March 2006. 

Monday, December 26, 2016

Prosesor Paralel

Prosesor paralel atau parallel computing adalah salah satu jenis komputasi banyak komputasi atau eksekusi dari proses yag dijalankan secara simultan. Sebuah instruksi yang besar dapat dipecah menjadi beberapa instruksi kecil dan dijalankan secara bersamaan. Ada beberapa bentuk parallel computing diantaranya bit-level paralellism, instruction level paralellism, dan data paralellism.

Pada prosesor paralel memiliki beberapa teknik pemrosesan :
1. Pipelining
2. Unit-unit fungsional berganda
3. Tumpang tindih antara operasi CPUdan I/O
4. Interleaving memori
5. Multiprograming
6. Multiprosesing

1. Jaringan Interkoneksi 
Ada 5 komponen
1. CPU
2. Memori
3. Interface : peralatan yang yangnmembawa pesanmasuk dan keluar dari CPU danMemori
4. Penghubung : saluran fisik yang dilalui bit-bituntuk berpindah tempat
5. Switch : peralatan yang memiliki banyak portinput dan port output
Komunikasi diantara terminal-terminal yang berbeda harus dapat dilakukan dengan suatu media tertentu. Interkoneksi yang efektif antara prosesor dan modul memorisangat penting dalam lingkungan komputer. Menggunakan arsitektur bertopologi  busbukan merupakan solusi yang praktis karena bus hanya sebuah pilihan yang baik ketika digunakan untuk menghubungkan komponen-komponen dengan jumlah yang sedikit. Jumlah komponen dalam sebuah modul IC bertambah seiring waktu. Oleh karena itu, topologi  bus bukan topologi yang cocok untuk kebutuhan interkoneksi komponenkomponen di dalam modul IC. Selain itu juga tidak dapat diskalakan, diuji, dan kurang dapat disesuaikan, serta menghasilkan kinerja toleransi kesalahan yang kecil. Di sisi lain, sebuah  crossbar menyediakan interkoneksi penuh diantara semua terminal dari  suatu  sistem  tetapi  dianggap sangat kompleks, mahal untuk membuatnya, dan sulit untuk dikendalikan. Untuk alasan ini jaringan interkoneksi merupakan solusi media komunikasi yang baik untuk sistem komputer dan telekomunikasi. Jaringan ini membatasi jalur-jalur diantara terminal komunikasi yang berbeda untuk mengurangi kerumitan dalam menyusun elemen switching

2. Mesin SIMD & MIMD

Mesin SIMD (Single Instruction, Multiple Data)  

SIMD adalah singkatan dari Single Instruction, Multiple Data, merupakan sebuah istilah dalam komputasi yang merujuk kepada sekumpulan operasi yang digunakan untuk menangani jumlah data yang sangat banyak dalam paralel secara efisien, seperti yang terjadi dalam prosesor vektor atau prosesor larik. SIMD pertama kali dipopulerkan pada superkomputer skala besar, meski sekarang telah ditemukan pada komputer pribadi.

Contoh aplikasi yang dapat mengambil keuntungan dari SIMD adalah aplikasi yang memiliki nilai yang sama yang ditambahkan ke banyak titik data (data point), yang umum terjadi dalam aplikasi multimedia. Salah satu contoh operasinya adalah mengubah brightness dari sebuah gambar. Setiap pixel dari sebuah gambar 24-bit berisi tiga buah nilai berukuran 8-bit brightness dari porsi warna merah (red), hijau (green), dan biru (blue). Untuk melakukan perubahan brightness, nilai R, G, dan B akan dibaca dari memori, dan sebuah nilai baru ditambahkan (atau dikurangkan) terhadap nilai-nilai R, G, B tersebut dan nilai akhirnya akan dikembalikan (ditulis kembali) ke memori.

Prosesor yang memiliki SIMD menawarkan dua keunggulan, yakni:
  • Data langsung dapat dipahami dalam bentuk blok data, dibandingkan dengan beberapa data yang terpisah secara sendiri-sendiri. Dengan menggunakan blok data, prosesor dapat memuat data secara keseluruhan pada waktu yang sama. Daripada melakukan beberapa instruksi "ambil pixel ini, lalu ambil pixel itu, dst", sebuah prosesor SIMD akan melakukannya dalam sebuah instruksi saja, yaitu "ambil semua pixel itu!" (istilah "semua" adalah nilai yang berbeda dari satu desain ke desain lainnya). Jelas, hal ini dapat mengurangi banyak waktu pemrosesan (akibat instruksi yang dikeluarkan hanya satu untuk sekumpulan data), jika dibandingkan dengan desain prosesor tradisional yang tidak memiliki SIMD (yang memberikan satu instruksi untuk satu data saja).
  • Sistem SIMD umumnya hanya mencakup instruksi-instruksi yang dapat diaplikasikan terhadap semua data dalam satu operasi. Dengan kata lain, sistem SIMD dapat bekerja dengan memuat beberapa titik data secara sekaligus, dan melakukan operasi terhadap titik data secara sekaligus.


Mesin MIMD (Multiple Instruction, Multiple Data)
 

MIMD adalah sebuah singkatan dari, "Multiple Instruction Stream-Multiple Data Stream" yaitu sebuah komputer yang memiliki beberapa prosesor yang bersifat otonomus yang mampu melakukan instruksi yang berbeda pada data yang berbeda. Sistem terdistribusi umumnya dikenal sebagai MIMD, entah itu menggunakan satu ruangan memori secara bersama-sama atau sebuah ruangan memori yang terdistribusi. Pada sistem komputer MIMD murni terdapat interaksi di antara pemrosesan. Hal ini disebabkan seluruh aliran dari dan ke memori berasal dari space data yang sama bagi semua pemroses. Komputer MIMD bersifat tightly coupled jika tingkat interaksi antara pemroses tinggi dan disebut loosely coupled jika tingkat interaksi antara pemroses rendah.

3. Arsitektur Pengganti
Dalam bidang teknik computer, arsitektur pengganti merupakan konsep perencanaan atau struktur pengoperasian dasar dalam computer atau bisa dikatakan rencana cetak biru dari deskripsi fungsional kebutuhan dari perangkat keras yang didesain, implementasi perencanaan dari masing-masing bagian seperti CPU, RAM, ROM, Memory Cache, dll.
 
Referensi :
1. https://en.wikipedia.org/wiki/Parallel_computing
2. https://id.wikipedia.org/wiki/SIMD
3. https://en.wikipedia.org/wiki/MIMD

Pipelining & RISC (Reduced Instruction Set Computer)

PIPELINING
 
Pipelining yaitu suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap berbeda yang jalankan secara kontinu pada unit pemrosesan. Dengan cara ini, maka unit pemrosesan selalu bekerja. Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistemkomputer. Seperti pada instruksi yang dijalankan oleh microprocessor. Tanpa pipelining, prosesor komputer mendapatkan instruksi pertama dari memori, melakukan operasi yang diperintahkan, lalu melanjutkan mengambil instruksi selanjutnya dari memori, dan seterusnya. Saat mengambil instruksi bagian aritmatik dari prosesor dalam kondisi menunggu (idle). Bagian aritmatik akan tetap menunggu sampai instruksi selanjutnya. Dengan menggunakan pipelining, arsitektur komputer mengizinkan instruksi selanjutnya untuk dieksekusi ketika prosesor sedang melakukan operasi aritmatik, menyimpan instruksi yang akan dijalankan di dalam buffer yang dekat dengan prosesor sampai setiap operasi instruksi dijalankan. Proses pengambilan instruksi dilakukan secara kontinu. Dampak yang diberikan adalah jumlah instruksi yang dapat dijalankan lebih banyak dengan periode waktu yang lebih sedikit.

Tahapan Pipeline
  • Mengambil instruksi dan mem-bufferkannya
  • Ketika tahapan kedua bebas tahapan pertama mengirimkan instruksi yang dibufferkan tersebut
  • Pada saat tahapan kedua sedang mengeksekusi instruksi, tahapan pertama memanfaatkan siklus memori yang tidak dipakai untuk mengambil dan membuffferkan instruksi berikutnya
Keuntungan Pipelining
  • Waktu siklus prosesor berkurang, sehingga meningkatkan tingkat instruksi dalam kebanyakan  kasus( lebih cepat selesai).
  • Beberapa combinational sirkuit seperti penambah atau pengganda dapat dibuat lebih cepat dengan menambahkan lebih banyak sirkuit. Jika pipelining digunakan sebagai pengganti, hal itu dapat menghemat sirkuit & combinational yang lebih kompleks.
  • Pemrosesan dapat dilakukan lebih cepat, dikarenakan beberapa proses dilakukan secara bersamaan dalam satu waktu.
Kerugian Pipelining
  • Pipelined prosesor menjalankan beberapa instruksi pada satu waktu. Jika ada beberapa cabang yang mengalami penundaan cabang (penundaan memproses data) dan akibatnya proses yang dilakukan cenderung lebih lama.
  • Instruksi latency di non-pipelined prosesor sedikit lebih rendah daripada dalam pipelined setara. Hal ini disebabkan oleh fakta bahwa intruksi ekstra harus ditambahkan ke jalur data dari prosesor pipeline.
  • Kinerja prosesor di pipeline jauh lebih sulit untuk meramalkan dan dapat bervariasi lebih luas di antara program yang berbeda.
  • Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang tepat agar proses tetap berjalan dengan benar.
  • Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi yang berurutan memerlukan data dari instruksi yang sebelumnya.
  •  Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program counter, sedangkan instruksi yang sedang berada dalam salah satu tahap proses yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter.
 RISC (Reduced Instruction Set Computer)

Reduced Instruction Set Computer (RISC, bahasa Inggris untuk “Komputasi set instruksi yang disederhanakan”) adalah filosofi desain untuk prosesor komputer, yang lebih suka menggunakan instruksi mesin sederhana. Istilah ini diciptakan pada tahun 1980 oleh David A. Patterson und Carlo H. Séquin. Dengan pembatasan pada perintah sederhana ini, maka desain chip juga menjadi sederhana dan dimungkinkan detak clock yang tinggi (cepat) untuk Prosesor RISC. Lawan dari filosofi disain RISC adalah Complex Instruction Set Computer (CISC).


Sebuah set instruksi RISC dibebaskan dari perintah yang kompleks – terutama mereka pada saat menggabungkan akses memori (perlahan) dengan operasi aritmatika (cepat). Dengan demikian, tingkat pipa prosesor (processor pipeline) dapat disetel dengan baik, langkah menjadi lebih pendek, pipeline dapat di clock lebih cepat dan dimanfaatkan lebih berimbang, karena jumlah “penyumbatan” (stalls) berkurang. Alhasil, karakteristik ini menghasilkan keuntungan besar dalam efisiensi. Kecuali itu, perintah sederhana juga dapat dikodekan dengan lebar yang seragam, dan dibandingkan arsitektur CISC upaya dekoder menjadi lebih rendah, sehingga latensi pipeline jauh berkurang.

Set instruksi prosesor CISC biasanya diimplementasikan dalam bentuk microcode, sementara pada prosesor RISC, perintah diterapkan secara individu tertanam. Arsitektur RISC digunakan pada komputer dengan kinerja tinggi, seperti komputer vektor. Selain digunakan dalam komputer vektor, desain ini juga diimplementasikan pada prosesor komputer lain, seperti pada beberapa mikroprosesor Intel 960, Itanium (IA64) dari Intel Corporation, Alpha AXP dari DEC, R4x00 dari MIPS Corporation, PowerPC dan Arsitektur POWER dari International Business Machine. Selain itu, RISC juga umum dipakai pada Advanced RISC Machine (ARM) dan StrongARM (termasuk di antaranya adalah Intel XScale), SPARC dan UltraSPARC dari Sun Microsystems, serta PA-RISC dari Hewlett-Packard.

Referensi :
1. http://whatis.techtarget.com/definition/pipelining
2. http://iranwaysqorni.blogspot.co.id/2015/01/penjelasan-risc-dan-pipelining-risc.html
3. http://gudanglinux.com/glossary/risc-reduced-instruction-set-computer/

Sunday, December 25, 2016

Arsitektur Family Komputer IBM PC

IBM PC adalah sebutan untuk keluarga komputer pribadi buatan IBM. IBM PC diperkenalkan pada 12 Agustus 1981, dan “dipensiunkan” pada tanggal 2 April 1987.


1. Family IBM PC & Turunannya
Sejak diluncurkan oleh IBM, IBM PC memiliki beberapa keluarga, yakni
  • IBM 4860 PCjr
  • IBM 5140 Convertible Personal Computer (laptop)
  • IBM 5150 Personal Computer (PC yang asli)
  • IBM 5155 Portable PC (sebenarnya merupakan PC XT yang portabel)
  • IBM 5160 Personal Computer/eXtended Technology
  • IBM 5162 Personal Computer/eXtended Technology Model 286
  • IBM 5170 Personal Computer/Advanced Technology
2. Konfigurasi Mikrokomputer Dasar
Mikrokomputer adalah interkoneksi antara mikroprosesor (CPU) dengan memori utama (main memory) dan antarmuka input-output (I/O devices) yang dilakukan dengan menggunakan sistim interkoneksi bus.Berikut adalah susunan gambar dari Mikrokomputer.


Jadi, Mikrokomputer dapat dikatakan pula sebagai sebuah mikroprosesor (CPU) dengan ditambahkannya unit memori serta sistem I/O.
Ciri utama sistem mikrokomputer adalah hubungan yang berbentuk “bus”. (Istilah bus diambil dari bahasa latin omnibus yang berarti kepada/untuk semua). Bus menunjukkan hubungan antara komponen-komponen secara elektris. Bus meneruskan data, alamat-alamat (address) atau sinyal pengontrol.

3. Komponen IBM PC
   - Sistem kontrol BUS : Pengontrol BUS, Buffer Data, dan Latches Alamat
   - Sistem kontrol interuppt : Pengontrol Interuppt
   - Sistem kontrol RAM & ROM : Chip RAM & ROM, Decoder Alamat, dan Buffer
   - Sistem kontrol DMA : Pengontrol DMA
   - Timer : Timer Interval Programmable
   - Sistem kontrol I/O : Interface Paralel Programmable 

Referensi :
1. https://end4su.wordpress.com/2009/06/18/mikrokomputer/
2. https://id.wikipedia.org/wiki/IBM_PC 
3. http://icikomputer.blogspot.co.id/2015/09/arsitektur-famili-komputer-ibm.html

Unit Input / Output

Pada sistem komputer, Unit Input Output atau biasa disingkat I/O adalah komunikasi antara sistem pemroses informasi yaitu komputer dengan dunia luar, yang berupa masukan dari manusia atau sistem pemrosesan informasi lainnya. Unit input adalah unit luar yang digunakan untuk memasukkan data dari luar ke dalam mikroprosesor ini atau sinyal (data) yang diterima oleh sistem, contohnya, data yang berasal dari keyboard atau mouse. Unit Output merupakan sinyal atau data yang dikirim dari input. Output biasanya, digunakan untuk menampilkan data, atau dengan kata lain untuk menangkap data yang dikirimkan oleh mikroprosesor, contohnya data yang akan ditampilkan pada layar monitor atau printer.

1. SISTEM BUS


System bus atau bus sistem, dalam arsitektur komputer merujuk pada bus yang digunakan oleh sistem komputer untuk menghubungkan semua komponennya dalam menjalankan tugasnya. Sebuah bus adalah sebutan untuk jalur di mana data dapat mengalir dalam komputer. Jalur-jalur ini digunakan untuk komunikasi dan dapat dibuat antara dua elemen atau lebih. Data atau program yang tersimpan dalam memori dapat diakses dan dieksekusi oleh CPU melalui perantara sistem bus. 

Sebuah komputer memiliki beberapa bus, agar dapat berjalan. Banyaknya bus yang terdapat dalam sistem, tergantung dari arsitektur sistem komputer yang digunakan. Sebagai contoh, sebuah komputer umumnya memiliki bus prosesor (Front-Side Bus), bus AGP, bus PCI, bus USB, bus ISA (yang digunakan oleh keyboard dan mouse), dan bus-bus lainnya. 

Struktur BUS
  •  Data Bus, merupakan jalur-jalur perpindahan antarmodul dalam sistem komputer. Baik lebar maupun jumlah saluran menentukan kinerja sistem komputer.
  • Address Bus, Untuk menandakan lokasi sumber dan tujuan pada proses transfer data. Pada saluran ini, CPU akan mengirim alamat memori yang akan ditulis atau dibaca.
  • Control Bus, digunakan untuk menngotrol izin akses ke data bus dan address bus. Jadi sebelum data masuk/keluar untuk ditulis atau dibaca, akan dikontrol terlebih dahulu agar benar-benar valid.
 2. STANDAR I/O INTERFACE
 Standar I/O Interface merupakan suatu mekanisme untuk mempermudah pengaksesan, sehingga sistem operasi melakukan standarisasi cara pengaksesan peralatan I/O.


Ketika suatu aplikasi ingin membuka data yang ada dalam suatu disk, sebenarnya aplikasi tersebut harus dapat membedakan jenis disk apa yang akan diaksesnya. Untuk mempermudah pengaksesan, sistem operasi melakukan standarisasi cara pengaksesan pada peralatan Input/Output. Pendekatan inilah yang dinamakan interface aplikasi Input/Output. Interface aplikasi Input/Output melibatkan abstraksi, enkapsulasi, dan software layering. Abstraksi dilakukan dengan membagi-bagi detail peralatan-peralatan Input/Output ke dalam kelas-kelas yang lebih umum. Dengan adanya kelas-kelas yang umum ini, maka akan lebih mudah untuk membuat fungsi-fungsi
standar(interface) untuk mengaksesnya. Lalu kemudian adanya device driver pada masing-masing peralatan Input/Output, berfungsi untuk enkapsulasi perbedaan-perbedaan yang ada dari masing-masing anggota kelas-kelas yang umum tadi. Device driver mengenkapsulasi tiap -tiap peralatan Input/Output ke dalam masing-masing 1 kelas yang umum tadi(interface standar). Tujuan dari adanya lapisan device driver ini adalah untuk menyembunyikan perbedaan-perbedaan yang ada pada device controller dari subsistem Input/Output pada kernel. Karena hal ini, subsistem Input/Output dapat bersifat independen dari hardware. Karena subsistem Input/Output independen dari hardware maka hal ini akan sangat menguntungkan dari segi pengembangan hardware. Tidak perlu menunggu vendor sistem operasi untuk mengeluarkan support code untuk hardware-hardware baru yang akan dikeluarkan oleh vendor hardware.

3. Pengaksesan Peralatan I/O
Mode pengaksesan Input/Output terdiri dari 2 cara, yaitu :
  • I/O Mapped I/O, Pada I/O mapped I/O atau isolated I/O, lokasi (transfer) terisolasi dari sistem memori di dalam ruang addres yang terpisah. Pada Isolated I/O, PORT terpisah dari memori. Karena portnya terpisah, user bisa memperluas memori ke ukuran penuhnya tanpa menggunakan ruang memory lain untuk perangkat I/O. Kerugiannya: bahwa data yang ditransfer antara I/O dan mikroprosesor harus diakses dengan instruksi-instruksi spt IN, INS, OUT, OUTS.
  • Memory Mapped I/O, Tak seperti isolated I/O, instruksi yang digunakan di memory mapped I/O tidak terbatas pada IN, INS, OUT, ataupun OUTS saja. Pada memory-mapped I/O, setiap instruksi yang bisa mentrasfer data antara mikroprosesor dan memory dapat digunakan. Keuntungan paling utama adalah bahwa instruksi transfer memory dapat digunakan untuk mengakses perangkat I / O. Sementara kerugian memory-mapped I/O; sebagian dari sistem memori digunakan sebagai peta I/O. Berdampak pada berkurangnya jumlah memori yang tersedia.
Keuntungan lain yang dimiliki Memory mapped I/O adalah bahwa sinyal IORC dan IOWC tidak memiliki fungsi dalam sistem, sehingga memungkinkan adanya pengurangan jumlah sirkuit yang dibutuhkan untuk decoding. Pada RISC, yang bekerja dengan prinsip penyederhanaan komputasi set instruksi, dimana 20% instruksi pada sebuah prosesor ternyata menangani sekitar 80% dari keseluruhan kerjanya keuntungan ini tentu akan dimanfaatkan. Olehkarena itu RISC bnyk menggnakan memory-mapped i/o.


Referensi :
1. https://en.wikipedia.org/wiki/Input/output
2. https://id.wikipedia.org/wiki/Bus_sistem
3. http://siskomtek.blogspot.co.id/2014/01/struktur-dan-macam-macam-bus-pada.html
4. http://abdirobhani.blogspot.co.id/2013/12/edisiUASelins.html

Saturday, November 5, 2016

Central Procesing Unit (CPU)

Central processing unit (CPU) adalah sirkuit elektronik dalam komputer yang melakukan instruksi dari program komputer dengan melakukan operasi aritmatika dasar, operasi logika, kontrol dan input / output (I / O) operasi yang ditentukan oleh instruksi. Istilah ini telah digunakan dalam industri komputer setidaknya sejak awal 1960-an. Secara tradisional, istilah "CPU" mengacu pada sebuah prosesor, lebih khusus untuk unit pengolahan dan unit kontrol (CU), membedakan elemen inti dari sebuah komputer dari komponen eksternal seperti memori utama dan sirkuit I / O.

CPU terbagi dalam beberapa komponen utama diantaranya :

SYSTEM BUS
Sistem bus adalah bus komputer yang menghubungkan komponen utama dari sistem komputer, menggabungkan fungsi dari data bus untuk membawa informasi, address bus untuk menentukan di mana ia harus dikirim, dan control bus untuk menentukan operasi. Teknik ini dikembangkan untuk mengurangi biaya dan meningkatkan modularitas, dan meskipun populer pada 1970-an dan 1980-an, komputer yang lebih modern menggunakan berbagai bus yang terpisah disesuaikan dengan kebutuhan yang lebih spesifik. 


  • ADDRESS BUS : Digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer data. Pada jalur ini, CPU akan mengirimkan alamat memori yang akan ditulis atau dibaca.Address bus biasanya terdiri atas 16, 20, 24, atau 32 jalur paralel.
  • DATA BUS : Adalah jalur‐jalur perpindahan data antar modul dalam sistem komputer. Karena pada suatu saat tertentu masing‐masing saluran hanya dapat membawa 1 bit data, maka jumlah saluran menentukan jumlah bit yang dapat ditransfer pada suatu saat. Lebar data bus ini menentukan kinerja sistem secara keseluruhan. Sifatnya bidirectional, artinya CPU dapat membaca dan menirma data melalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau 64 jalur paralel.
  • CONTROL BUS : Control Bus digunakan untuk mengontrol penggunaan serta akses ke Data Bus dan Address Bus. Terdiri atas 4 samapai 10 jalur paralel.

ALU (Arithmatic Logic Unit)
Unit aritmatika logika (ALU) adalah rangkaian digital yang digunakan untuk melakukan operasi aritmatika dan logika. Ini merupakan dasar fundamental dari central processing unit (CPU) dari komputer. CPU modern berisi ALU yang sangat kuat dan kompleks. Selain ALU, CPU modern berisi unit kontrol (CU).

Sebagian besar operasi dari CPU dilakukan oleh satu atau lebih ALU, yang memuat data dari register input. Sebuah register adalah sejumlah kecil penyimpanan yang tersedia sebagai bagian dari CPU. Unit kontrol memberitahu ALU operasi apa yang diperlukan untuk data tersebut itu dan ALU menyimpan hasilnya di output mendaftar. Unit kontrol memindahkan data antara register, ALU, dan memori. 

Contoh operasi aritmetika adalah operasi penjumlahan dan pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. tugas utama dari ALU (Arithmetic And Logic Unit)adalah melakukan semua perhitungan aritmetika atau matematika yang terjadi sesuai dengan instruksi program. ALU melakukan operasi arithmatika dengan dasar pertambahan, sedang operasi arithmatika yang lainnya, seperti pengurangan, perkalian, dan pembagian dilakukan dengan dasar penjumlahan. sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi arithmatika ini disebut adder. Tugas lalin dari ALU adalah melakukan keputusan dari operasi logika sesuai dengan instruksi program. Operasi logika (logical operation) meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika, yaitu:
  • sama dengan ( = )
  • tidak sama dengan ( <> ) 
  • kurang dari ( < )
  • kurang dari sama dengan ( <= )
  • lebih dari ( > )
  • lebih dari sama dengan ( >= )
CONTROL UNIT
Unit kendali / 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 bagian lainnya dari perangkat CPU.

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). CU, juga berfungsi untuk bersinkronasi antar komponen.

Tugas CU :
  1. Mengatur dan mengendalikan alat input dan output
  2. Mengatur dan mengendalikan instruksi-instruksi dari memori utama
  3. Mengambil data dari memori utama kalau diperlukan oleh proses
  4.  Mengirim instruksi ke ALU bila ada perhitungan aritmetika atau perbandingan logika serta mengawasi kerja.
  5. Menyimpan hasil proses ke memori utama.
Macam-macam CU :
  1. Single Cycle CU : Proses di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satu cycle, maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control line hanya merupakan fungsi dari opcode 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 yang single-cycle, unit kontrol yang multi-cycle lebih memiliki banyak fungsi. Dengan memperhatikan state dan 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-bit opcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU; bukan instruksi cycle selanjutnya.
SET REGISTER
Register prosesor merupakan memory yang dapat diakses secara cepat untuk central processing unit (CPU). Register biasanya terdiri dari sejumlah kecil penyimpanan cepat, meskipun beberapa register memiliki fungsi hardware tertentu, dapat berupa read-only atau menulis-hanya. Register biasanya ditangani oleh mekanisme lain dari memori utama, tetapi mungkin dalam beberapa kasus menjadi pemetaan memori.

Register prosesor biasanya berada di bagian atas hirarki memori, dan menyediakan cara tercepat untuk mengakses data. register prosesor biasanya mengacu hanya untuk kelompok register yang secara langsung dikodekan sebagai bagian dari instruksi, seperti yang didefinisikan oleh set instruksi. Namun, CPU modern dengan kinerja tinggi sering memiliki duplikat dari "register arsitektur" dalam rangka meningkatkan kinerja melalui daftar penamaan register, yang memungkinkan eksekusi paralel. desain x86 modern mengakuisisi teknik ini sekitar tahun 1995 dengan rilis dari Pentium Pro, Cyrix 6x86, Nx586, dan AMD K5.

Register dapat diklasifikasikan sebagai berikut :
  • User Accessible Register
  1. Data Register
  2. Address Register
  3. General Purpose Register
  4. Status Register
  5. Floating Point Register
  6. Constant Register
  7. Vector Register
  8. Special Purpose Register
  • Internal Register
  1. Instruction Register
  2. Register yang terhubung dengan informasi dari ram : Memory Buffer Register, Memory Data Register, Memory Address Register

Referensi :
  1. https://en.wikipedia.org/wiki/Central_processing_unit
  2. http://study.com/academy/lesson/arithmetic-logic-unit-alu-definition-design-function.html
  3. https://id.wikipedia.org/wiki/Unit_aritmatika_dan_logika
  4. https://id.wikipedia.org/wiki/Unit_Kendali
  5. https://en.wikipedia.org/wiki/System_bus 
  6. https://en.wikipedia.org/wiki/Processor_register

Friday, November 4, 2016

Arsitektur Set Instruksi

Set Instruksi (bahasa Inggris: Instruction Set, atau Instruction Set Architecture (ISA)) didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh para pemrogram. Secara umum, ISA ini mencakup jenis data yang didukung, jenis instruksi yang dipakai, jenis register, mode pengalamatan, arsitektur memori, penanganan interupsi, eksepsi, dan operasi I/O eksternalnya (jika ada). Arsitektur set instruksi berbeda dengan mikroarsitektur, yang merupakan sejumlah teknik desain prosesor yang digunakan, dalam prosesor tertentu, untuk menerapkan set instruksi. Prosesor dengan microarchitectures yang berbeda dapat berbagi set instruksi yang sama. Sebagai contoh, Intel Pentium dan AMD Athlon mengimplementasikan versi yang hampir identik dari set instruksi x86, tetapi memiliki desain internal yang berbeda secara radikal.



Klasifikasi Set Instruksi
Ada 2 jenis klasifikasi set instruksi yang utama yaitu :
  1. CISC (Complex Instruction Set of Computing)
  2. RISC (Reduced Instruction Set of Computing)
CISC (Complex Instruction Set of Computing)
CISC (Complex Instruction Set of Computing) adalah desain prosesor dimana instruksi tunggal dapat menjalankan beberapa operasi tingkat rendah (seperti beban dari memori, operasi aritmatika, dan penyimpanan memori) atau mampu menjalankan operasi multi-langkah atau mode pengalamatan dalam instruksi tunggal. Istilah ini surut diciptakan berbeda dengan Reduced Instruction Set of Computing (RISC) dan karena itu telah menjadi sesuatu dari istilah umum untuk segala sesuatu yang bukan RISC, dari komputer mainframe yang besar dan kompleks untuk mikrokontroler sederhana di mana beban memori dan operasional penyimpanan tidak lepas dari instruksi aritmatika.

RISC (Reduced Instruction Set of Computing)
RISC (Reduced Instruction Set of Computing) adalah strategi desain CPU berdasarkan ide bahwa set instruksi yang disederhanakan memberikan kinerja yang lebih tinggi bila dikombinasikan dengan arsitektur mikroprosesor mampu melaksanakan instruksi tersebut menggunakan siklus mikroprosesor yang lebih sedikit per instruksi. [1] Sebuah komputer berdasarkan strategi ini adalah set instruksi komputer berkurang, juga disebut RISC. Arsitektur menentang disebut kompleks set instruksi komputasi (CISC). 

Karakteristik dan Fungsi Set Instruksi
  • Operasi dari CPU ditentukan oleh instruksi-instruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (mechine instructions) atau instruksi komputer (computer instructions). 
  • Kumpulan dari instruksi-instruksi yang berbeda yang dapat dijalankan oleh CPU disebut set Instruksi (Instruction Set).
 Elemen-elemen dari Set Instruksi
  • Operation Code (opcode) : menentukan operasi yang akan dilaksanakan
  • Source Operand Reference : merupakan input bagi operasi yang akan dilaksanakan
  • Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan
  • Next instruction Reference : memberitahu CPU untuk mengambil (fetch) instruksi berikutnya setelah instruksi yang dijalankan selesai.
Design set instruksi merupakan masalah yang sangat kompleks yang melibatkan banyak aspek, diantaranya adalah :
  1. Kelengkapan set instruksi
  2. Ortogonalitas (sifat independensi instruksi)
  3. Kompatibilitas : Source Code Compatibility & Object Code Compatibility
Suatu instruksi terdiri dari beberapa field yang sesuai dengan elemen dalam instruksi tersebut. Layout dari suatu instruksi sering disebut sebagai Format Instruksi (Instruction Format).




Jenis Operand
  • Address
  • Numbers : Integer, Floating Point, Decimal
  • Character : ASCII, EBCDIC
  • Logical Data
Jenis Instruksi
  • Data processing: Arithmetic dan Logic Instructions
  • Data storage: Memory instructions
  • Data Movement: I/O instructions
  • Control: Test and branch instructions
Jenis Addressing Mode (Teknik Pengalamatan)
  1. Immediate
  2. Direct
  3. Indirect
  4. Register
  5. Register Indirect
  6. Displacement
  7. Stack
 Immediate Addressing
- Pengalamatan yang paling sederhana.
- Operand benar-benar ada dalam instruksi atau bagian dari intsruksi
- Operand sama dengan field alamat
- Umumnya bilangan akan disimpan dalam bentuk complement dua
- Bit paling kiri sebagai bit tanda
- Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga maksimum word data

Keuntungan :
- Tidak adanya referensi memori selain dari instruksi yang diperlukan untuk memperoleh operand
- Menghemat siklus instruksi sehingga proses keseluruhanakan akan cepat

Kekurangan :
- Ukuran bilangan dibatasi oleh ukuran field

Contoh :
- ADD 7 ; tambahkan 7 pada akumulator

Direct Addressing
- Teknik ini banyak digunakan pada komputer lama dan komputer kecil
- Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus

Kelebihan :
- Field alamat berisi efektif address sebuah operand

Kekurangan :
- Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan panjang word

Contoh :
- ADD A ; tambahkan isi pada lokasi alamat A ke akumulator

Indirect Addressing
- Merupakan mode pengalamatan tak langsung
- Field alamat mengacu pada alamat word di alamat memori, yang pada gilirannya akan berisi alamat operand yang panjang

Kelebihan :
- Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi

Kekurangan :
- Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses operasi

Contoh :
- ADD (A) ; tambahkan isi memori yang ditunjuk oleh isi alamat A ke akumulator


Register Addressing
- Metode pengalamatan register mirip dengan mode pengalamatan langsung
- Perbedaanya terletak pada field alamat yang mengacu pada register, bukan pada memori utama
- Field yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi 8 atau 16 register general purpose

Keuntungan :
- Diperlukan field alamat berukuran kecil dalam instruksi dan tidak diperlukan referensi memori
- Akses ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi akan lebih cepat

Kerugian :
- Ruang alamat menjadi terbatas
Register Indirect Addressing
Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak langsung
- Perbedaannya adalah field alamat mengacu pada alamat register
- Letak operand berada pada memori yang dituju oleh isi register
- Keuntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan pengalamatan tidak langsung
- Keterbatasan field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga alamat yang dapat direferensi makin banyak
- Dalam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada mode pengalamatan tidak langsung
Displacement Addressing
- Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung
- Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit
- Operand berada pada alamat A ditambahkan isi register
Tiga model displacement
- Relative addressing : register yang direferensi secara implisit adalah Program Counter (PC)
- Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field alamat
- Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operand berikutnya
Base register addressing : register yang direferensi berisi sebuah alamat memori dan field alamat berisi perpindahan dari alamat itu
- Referensi register dapat eksplisit maupun implisit
- Memanfaatkan konsep lokalitas memori
Indexing  : field alamat mereferensi alamat memori utama, dan register yang direferensikan berisi pemindahan positif dari alamat tersebut
- Merupakan kebalikan dari mode base register
- Field alamat dianggap sebagai alamat memori dalam indexing
- Manfaat penting dari indexing adalah untuk eksekusi program-pprogram iteratif

Contoh :
- Field eksplisit bernilai A dan field imlisit mengarah pada register
Stack Addressing
- Stack adalah array lokasi yang linier = pushdown list = last-in-firs-out
- Stack merupakan blok lokasi yang terbaik
- Btir ditambahkan ke puncak stack sehingga setiap blok akan terisi secara parsial
- Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian paling atas stack
- Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack pointer mereferensi ke elemen ketiga stack
- Stack pointer tetap berada dalam register
- Dengan demikian, referensi-referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung. 


Referensi :
  1. https://en.wikipedia.org/wiki/Instruction_set
  2. https://en.wikipedia.org/wiki/Complex_instruction_set_computing
  3. https://en.wikipedia.org/wiki/Reduced_instruction_set_computing
  4. http://www.slideshare.net/Henniheny/set-instruksi-27850098

Saturday, October 8, 2016

Organisasi Komputer Dasar


Agar dapat berjalan suatu sistem komputer memerlukan beberapa komponen utamanya untuk berfungsi. Komponen-komponen utama dari sistem komputer tersebut menjalankan tugasnya masing-masing dan bekerja saling terkait satu sama lain. Berikut ini adala komponen-komponen utama dari suatu sistem komputer beserta fungsinya.

1. Central Processing Unit (CPU)
CPU adalah komponen dari sistem komputer yang menyimpan dan memproses instruksi dari program komputer dengan melakukan fungsi dasar aritmatika, logika, kontrol, dan operasi input/output yang diperintahkan dari instruksi. Secara umum CPU memiliki 2 bagian fungsi operasional yaitu ALU (Arithmetic Logic Unit) dan CU (Control Unit). ALU berfungsi untuk menjalankan fungsi aritmatika dasar dan operasi logika bitwise. CU tidak berfungsi untuk menjalankan perintah melainkan hanya mengarahkan dan mengontrol kerja dari sistem komputer.

2. Main Memory
Komponen selanjutnya adalah memory. Fungsi dari memori ini adalah sebagai media penyimpanan dalam sistem komputer. Memory utama terbagi menjadi 2, yaitu RAM (Random Access Memory) dan ROM (Read Only Memory). RAM berfungsi untuk menyimpan instruksi dan data dari program yang sedang berjalan, RAM bersifat volatile atau data yang tersimpan akan hilang begitu tidak ada tegangan listrik sehingga RAM bersifat sebagai media penyimpanan sementara. ROM berfungsi untuk menyimpan program dan bersifat non volatile atau data yang tersimpan tidak akan hilang meskipun tidak ada supply tegangan listrik. Pada sistem komputer ROM biasanya menyimpan program BIOS.

3. Secondary Storage
Secondary storage atau memori sekondari berfungsi sebagai media penyimpanan tambahan untuk komputer. Memori ini biasanya bersifat read/write atau dapat dibaca dan tulis dan bersifat non volatile. Memori ini biasanya dipergunakan untuk menyimpan data atau file file sehingga ukuran memori ini relatif besar berukuran Giga - Tera Byte. Contoh dari memory ini adalah hard disk, flash disk, DVD, dll.

4. Input and Output (I/O) Devices
Perangkat input dan output berfungsi memiliki fungsi untuk memudahkan interaksi antara user / pengguna dan sistem komputer.
Perangkat input berfungsi untuk memasukkan data atau perintah ke komputer. Contoh dari perangkat input : keyboard, mouse, scanner, dll.
Perangkat output berfungsi untuk menampilkan keluaran dari hasil pengolahan data di komputer. Contoh dari perangkat output : monitor, printer, dll.

5. Sistem Interkoneksi
Sistem interkoneksi adalah suatu sistem komunikasi yang menghubungkan semua komponen utama sistem komputer dengan CPU. Sistem interkoneksi disebut juga dengan BUS. Terdapat internal bus dan external bus. Internal bus terbagi menjadi 3 yaitu Control Bus, Address Bus, dan Data Bus. Control Bus berfungsi sebagai saluran komunikasi command cpu dan status signal dari perangkat yang terhubung. Address Bus berfungsi membawa informasi alamat dari komponen dan device yang berkomunikasi dengan CPU. Data Bus berfungsi sebagai jalur komunikasi data yang dikirim dan diterima.

Referensi
1. http://www.electronics.dit.ie/staff/tscarff/DT089_Physical_Computing_1/computer_structure/computer_structure.htm
2. https://en.wikipedia.org/wiki/Central_processing_unit
3. http://electronicstechnician.tpub.com/14091/css/Computer-Interconnection-System-131.htm
4. https://en.wikipedia.org/wiki/Bus_%28computing%29#External_bus
5. https://en.wikipedia.org/wiki/Control_bus

Wednesday, September 28, 2016

Evolusi Arsitektur Komputer


Komputer adalah sebuah perangkat yang dapat melakukan banyak fungsi saat ini, mulai dari memutar audio dan video, membuat file dokumen, membuat file presentasi hingga melakukan perhitungan kompleks pada sistem kendali. Pada awal perkembangannya komputer hanya digunakan untuk melakukan tugas tugas perhitungan sederhana. Berikut ini adalah evolusi sistem komputer dari awal perkembangannya hingga saat ini.

EVOLUSI ARSITEKTUR KOMPUTER

1801 : Joseph Marie Jacquard dari Perancis menemukan mesin tenun yang dapat menenun design secara otomatis dengan kartu pons (punch card) yang terbuat dari kayu. Teknologi kartu pons (punch card) ini lah yang digunakan oleh generasi awal komputer

1822 : Charles Babbage, Ilmuwan matematika dari Inggris merancang sebuah mesin tenaga uap yang dapat melakukan perhitungan matematis yang dapat menghitung sebuah tabel nilai.

1936 : Alan Turing menciptakan sebuah mesin universal yang dapat melakukan komputasi / perhitungan pada hampir semua hal yang dapat dihitung. Mesin ini dinamakan mesin turing

Mesin Turing (Turing Machine) terdiri dari pita peyimpanan panjang yang digunakan sebagai memory seperti pada sistem komputer atau sebagai tempat penyimpanan data. Cara kerja mesin ini adalah dengan mencetak nilai pada pita penyimpanan lalu menggeser pita penyimpanan tersebut ke kiri, sehingga kita dapat mencetak nilai selanjutnya pada pita penyimpanan.

1941 : John Vincent Atanasoff dan Clifford Berry merancang sebuah komputer yang dapat memecahkan 29 persamaan secara berkelanjutan. Pada mesin inilah komputer dapat menyimpan informasi pada memory utamanya.

Atanasoff-Berry Computer (ABC) adalah komputer yang pertama kali mengimplementasikan 3 ide utama yang masih digunakan pada komputer modern  :
1. Penggunaan digit biner untuk merepresentasikan angka dan data
2. Melakukan perhitungan menggunakan sistem elektronik
3. Mengorganisasikan komputasi dan memory secara terpisah

Memory dari atanasoff-berry computer adalah system memory kapasitor regeneratif  yang menggunakan drum yang berisi 1600 kapasitor. Arithmetic Logic Unit (ALU) menggunakan tabung hampa (vacum tube).

1943-1944 : John Mauchly and J. Presper Eckert dari University of Pennsylvania membangun Electrical Numerator Integrator And Calculator (ENIAC).

ENIAC menggunakan 10 piston ring counters untuk menyimpan digits/angka, setiap digit terdiri dari 36 tabung hampa (vacum tube). Inputnya menggunakan IBM card reader dan outputnya menggunakan IBM punch card. 

1947 : William Shockley, John Bardeen, Walter Brattain dari Bell Laboratories menciptakan transistor, sebuah swicth elektrik yang terbuat dari material solid/keras tanpa menggunakan vacum. Hal ini mengakhiri penggunaan tabung hampa (vacum tube) pada sistem komputer.

1958 : Jack Kilby dan Robert Noyce menciptakan Integrated Circuit (IC) yang digunakan sebagai processing unit pada komputer. Penemuan IC ini menandai awal dari era komputer modern. Dimana dalam 1 IC tertanam banyak transistor di dalamnya.

1971 : Intel menciptakan mikroprosesor pertama intel 4004. Mikroprosesor inilah cikal bakal dari prosesor komputer yang kita gunakan hingga saat ini

Mikroprosesor telah berkembang dari awal pembuatannya hingga saat ini. Perkembangan ini dapat terlihat dari skala integrasinya yaitu jumlah transistor yang tertanam dalam sebuah prosesor.

1. SSI (Small Scale Integration), memiliki kurang dari 100 transistor per chip
2. MSI (Medium Scale Integration), memiliki kurang dari 500 transistor per chip
3. LSI (Large Scale Integration), memiliki 500 sampai 300000 transistor per chip
4. VLSI (Very Large Scale Integration), memiliki lebih dari 300000 transistor per chip
5. VVLSI (Very Very Large Scale Integration), memiliki 1500000 transistor per chip.

SUMMARY

1. Pada awal penciptaannya komputer pertama hanya berupa sistem mekanik tanpa menggunakan tenaga listrik dimana inputnya berasal dari kartu pons (punch card) untuk melakukan prosesnya.
2. Pada perkembangan selanjutnya komputer sudah menggunakan tenaga listrik dan menggunakan tabung hampa (vacum tube) untuk penguat sinyal, pada saat ini komputer berukuran sangat besar dan memerlukan konsumsi daya listrik yang sangat tinggi.
3. Perkembangan selanjutnya setelah ditemukannya transistor, transistor ini digunakan dalam sistem komputer.
4. Dengan ditemukannya Integrated Circuit (IC) komponen-komponen elektronik pembentuk sistem komputer dapat dijadikan satu dalam sebuah chip. Ukuran komputer menjadi semakin kecil dan konsumsi daya yang menjadi rendah.
5. Mikroprosesor diciptakan dan dikembangkan hingga saat ini. Sebuah processor dapat memiliki jutaan transistor terkandung didalamnya.

Daftar Pustaka
1. http://www.livescience.com/20718-computer-history.html
2. https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/turing-machine/one.html
3. https://en.wikipedia.org/wiki/Atanasoff%E2%80%93Berry_computer
4. https://en.wikipedia.org/wiki/ENIAC
5. http://www.daenotes.com/electronics/devices-circuits/integrated-circuits-ic




Friday, June 17, 2016

Rangkaian Bias Transistor (Pascal Procedure)

Aplikasi yang saya buat ini bertujuan untuk menghitung nilai arus basis (ib), arus emiter (ie), arus collector (ic), dan tegangan collector-emiter (vce) pada rangkaian bias transistor common emiter. Terdapat 2 menu pilihan yaitu rangkaian bias tetap & rangkaian bias umpan balik tegangan. Input pada program ini yaitu nilai beta (b), tahanan emiter (Re), tahanan basis (Rb), tahanan collector (Rc) dan Vcc. Input akan diolah dengan procedure, terdapat empat procedure yaitu ib, ic, ie & vce yang menghasilkan output masing-masing. Output akan ditampilkan dilayar.

FLOWCHART :




LISTING PROGRAM : 



TAMPILAN ANTARMUKA PROGRAM :