Pages

KLASIFIKASI PADA ARSITEKTUR KOMPUTER PARAREL DAN MACAM GANGGUAN PADA SISTEM DISTRIBUSI

Sabtu, 23 Desember 2017
Arsitektur Paralel

Paralelisme dalam suatu komputer dapat diaplikasikan pada beberapa tingkatan, seperti berikut:

1. Tingkat pekerjaan: antara pekerjaan-pekerjaan atau fase-fase suatu pekerjaan. Hal ini menjadi prinsip dasar dari multiprogramming.

2. Tingkat prosedur: antara prosedur-prosedur dan di dalam loop. Hal ini harus tercakup sebagai hal yang penting bagi suatu bahasa.

3. Tingkat instruksi: antara fase-fase sebuah siklus instruksi, yaitu fetch, decode dan eksekusi suatu instruksi.

4. Tingkat aritmatika dan bit: antara bit-bit dalam sirkuit aritmatika. Salah satu contohnya adalah adder paralel. Telah banyak usaha untuk mengklasifikasikan perancangan arsitektur komputer paralel. Namun tidak ada satupun yang mampu memisahkan semua jenis perancangan menjadi kelompok-kelompok yang berbeda.

Skema klasifikasi yang paling umum digunakan adalah taksonomi Flynn. Kita akan membahas pula dua skema lainnya yaitu: Shore dan Feng.

Klasifikasi Flynn

Michael J. Flynn memperkenalkan suatu skema untuk mengklasifikasikan arsitektur suatu komputer dengan melihat bagaimana mesinnya menghubungkan instruksi-instruksinya ke data yang sedang diproses. Berikut klasifikasinya:

1. SISD: single instruction stream, single data stream. Merupakan suatu komputer serial konvesional dimana instruksi-instruksi dijalankan satu per satu dan sebuah instruksi tunggal berhubungan dengan paling banyak satu operasi data.

2. SIMD: single instruction stream, multiple data stream. Dalam sebuah komputer SIMD, suatu instruksi tunggal mengawali sejumlah besar operasi.

3. MISD: multiple instruction stream, single data stream. Kelas MISD melaksanakan beberapa operasi instruksi secara bersamaan pada sebuah item data tunggal.

4. MIMD: multiple instruction stream, multiple data stream. Sebuah komputer MIMD dicirikan oleh eksekusi lebih dari satu instruksi pada saat yang bersamaan, dimana setiap instruksi beroperasi pada beberapa aliran data.

Klasifikasi Shore

J.E. Shore membuat klasifikasi arsitektur komputer yang didasarkan pada organisasi bagian-bagian penyusun suatu komputer dan membedakannya menjadi enam jenis mesin.

1. Mesin I. Pada komputer ini, satu instruksi dikerjakan pada suatu waktu dan masing-masing beroperasi pada satu word dalam suatu waktu.

2. Mesin II. Komputer ini juga menjalankan satu instruksi pada suatu waktu, namun ia beroperasi pada sebuah irisan dari suatu bit dalam suatu waktu, bukannya semua bit dalam suatu word data.

3. Mesin III. Sebuah komputer dalam kelas ini memiliki dua unit pengolahan yang dapat beroperasi pada data, satu word dalarn suatu waktu atau suatu irisan bit dalam suatu waktu.

4. Mesin IV. Komputer jenis ini dicirikan oleh sejumlah elemen (unit pengolahan dan unit memori), semua di bawah kendali sebuah unit kendali logika (CLU) tunggal.

5. Mesin V. Mesin V dihasilkan dengan mengubah Mesin IV sedemikian sehingga elemen-elemen pengolahan dapat berkomunikasi dengán tetangga terdekat mereka.

6. Mesin VI. Komputer ini, disebut sebagai array logika-dalam-memori, merupakan sebuah mesin dengan logika prosesor yang tersebar dalam memori.

Klasifikasi Feng

Tse-yum Feng (1972) menyarankan pengklasifikasian arsitektur komputer atas tingkatan paralelisme mereka. Tingkatan paralelisme (degree of parallelism) diwakili oleh pasangan (n, m) dimana n merupakan panjang word dan m adalah panjang irisan bit.
Pasangan ini diklasifikasikan menjadi empat kelompok sebagai berikut:

1. Jika n = 1 dan m = I maka tidak terjadi paralelisme. Word dan bit diproses satu per satuan waktu. Hal ini disebut sebagai word serial/bit serial(WSBS).

2. Jika n> 1 dan m = 1 maka paralelisme itu disebut sebagai word paralel/bit serial (WPBS). Dalam hal ini, semua n irisan bit diproses satu per satuan waktu.

3. Paralelisme word serial/bit paralel (WSBP) terjadi jika n = 1 dan m> 1. Dengan demikian sejumlah n word diproses satu per satuan waktu tetapi sejumlah m bit dan masing-masing word diproses secara paralel.

4. Kategori terakhir disebut sebagai word paralel/bit paralel (WPBP) dan merupakan suatu paralelisme dimana n > 1 dan m > 1. Dalam hal ini, sejumlah nm bit diproses secara bersamaan.

Komputer sekuensial berdasarkan klasifikasi Flynn adalah kelompok komputer SISD  hanya mempunyai satu unit pengendali untuk menentukan instruksi yang akan dieksekusi. Pada setiap satuan waktu hanya satu instruksi yang dapat dieksekusi, dimana kecepatan akses ke memori dan kecepatan piranti masukan dan keluaran dapat memperlambat proses komputasi.

Beberapa metoda dibangun untuk menghindari masalah tersebut, seperti penggunaan cache memory. Namun komputer sekuensial ini tetap mengalami keterbatasan jika menangani masalah yang memerlukan kecepatan tinggi. Hal-hal tersebut di atas pada akhirnya melatarbelakangi lahirnya sistem komputer paralel.

Berdasarkan klasifikasi Flynn, komputer paralel termasuk kelompok SIMD atau MIMD. Komputer paralel mempunyai lebih dari satu unit pemroses dalam sebuah komputer yang sama.

Hal yang membuat suatu komputer dengan banyak prosesor disebut sebagai komputer paralel adalah bahwa seluruh prosesor tersebut dapat beroperasi secara simultan. Jika tiap-tiap prosesor dapat mengerjakan satu juta operasi tiap detik, maka sepuluh prosesor dapat mengerjakan sepuluh juta operasi tiap detik, seratus prosesor akan dapat mengerjakan seratus juta operasi tiap detiknya[Les93].

Pada dasarnya aktivitas sebuah prosesor pada komputer paralel adalah sama dengan aktivitas sebuah prosesor pada komputer sekuensial. Tiap prosesor membaca (read) data dari memori, memprosesnya dan menuliskannya (write) kembali ke memori. Aktivitas komputasi ini dikerjakan oleh seluruh prosesor secara paralel.

Macam-macam Gangguan pada sistem distribusi

1. Gangguan beban lebih

Gangguan ini sebenarnya bukan gangguan murni, tetapi bila dibiarkan terus menerus berlangsung dapat merusak peralatan listrik yang dialiri oleh arus tersebut. Karena arus yang mengalir melebihi dari kapasitas peralatan listrik dan pengaman yang terpasang melebihi kapasitas peralatan, sehingga saat beban melebihi pengaman tidak trip. Misal : kapasitas penghantar 300 A dan pengaman di setting 350 A tetapi beban mencapai 320 A, sehingga pengaman tidak trip dan penghantar akan terbakar.

2. Gangguan hubung singkat

Gangguan hubung singkat, dapat terjadi antar fasa (3 fasa atau 2 fasa) atau 1 fasa ketanah dan sifatnya bisa temporer atau permanen.

Gangguan permanen antara lain :

Gangguan hubung singkat, bisa terjadi pada kabel atau pada belitan transformator tenaga yang disebabkan karena arus gangguan hubung singkat melebihi kapasitasnya, sehingga penghantar menjadi panas yang dapat mempengaruhi isolasi atau minyak transformator, sehingga isolasi tembus. Pada generator yang disebabkan karena adanya gangguan hubung singkat atau pembebanan yang melebihi kapasitas. Sehingga rotor memasok arus dari eksitasi berlebih yang dapat menimbulkan pemanasan yang dapat merusak isolasi sehingga isolasi tembus. Disini pada titik gangguan memang terjadi kerusakan yang permanen. Peralatan yang terganggu tersebut, baru bisa dioperasikan kembali setelah bagian yang rusak diperbaiki atau diganti.

Gangguan temporer, antara lain :

Flashover karena sambaran petir (penghantar terkena sambaran petir), flashover dengan pohon, penghantar tertiup angin yang dapat menimbulkan gangguan antar fasa atau penghantar fasa menyentuh pohon yang dapat menimbulkan gangguan 1 fasa ketanah. Gangguan ini yang tembus (breakdown) adalah isolasi udaranya, oleh karena itu tidak ada kerusakan yang permanen. Setelah arus gangguannya terputus, misalnya karena terbukanya circuit breaker oleh relai pengamannya, peralatan atau saluran yang terganggu tersebut siap dioperasikan kembali.

3. Gangguan Tegangan Lebih
Gangguan tegangan lebih yang diakibatkan adanya kelainan pada sistem, dimana tegangan lebih dibedakan atas :

- Tegangan lebih dengan power frekuensi, misal : pembangkit kehilangan beban yang diakibatkan adanya gangguan pada sisi jaringan, sehingga over speed pada generator, tegangan lebih ini dapat juga terjadi adanya gangguan pada pengatur tegangan secara otomatis (Automatic Voltage Regulator).

- Tegangan lebih transient karena adanya surja petir (lightning surge) yang mengenai peralatan listrik atau saat pemutus (PMT) yang menimbulkan kenaikan tegangan yang disebut surja hubung (switching surge).

4. Gangguan Ketakstabilan (Instability)

Gangguan hubung singkat atau lepasnya pembangkit, dapat menimbulkan ayunan daya (power swing) atau menyebabkan unit-unit pembangkit lepas sinkron, ayunan dapat menyebabkan salah kerja relai. Lepas sinkron dapat menyebabkan berkurangnya pembangkit, karena tripnya pembangkit yang besar dari spinning reserve, maka frekuensi akan terus turun atau terpisahnya sistem yang selanjutnya dapat menyebabkan gangguan yang lebih luas bahkan sistem terjadi keruntuhan (collapse).

Sumber  "MARSUDI, DJITENG.,” Operasi Sistem Tenaga Listrik “, Yogyakarta, Graha Ilmu, 2006"
Read more ...

Prinsip Pipelining Secara Umum

Sabtu, 23 Desember 2017
PIPELINING

Telah lama diketahui bahwa membaca instruksi dari memori merupakan hambatan utama dalam hal kecepatan untuk menjalankan suatu instruksi. Untuk mengatasi masalah ini, komputer-komputer generasi IBM Stretch (1959) telah memiliki kemampuan untuk mengambil terlebih dahulu instruksi-instruksi dari memori sehingga instruksi-instruksi tersebut akan selalu siap ketika mereka dibutuhkan. Instruksi-instruksi ini disimpan dalam sekumpulan register yang disebut penyangga prabaca. Dengan cara ini, ketika sebuah instruksi dibutuhkan, instruksi tersebut biasanya dapat segera diambil dari penyangga prabaca daripada menunggu sebuah memori membaca hingga selesai. Oleh karena itu, sistem prabaca membagi pelaksanaan instruksi menjadi bagian: membaca dan pelaksanaan aktual. Konsep pipeline menjelaskan strategi lebih jauh. Pelaksanaan instruksi sering dibagi ke dalam banyak bagian dan bukan hanya ke dalam dua bagian saja, di mana masing-masing bagian ditangani oleh seperangkat hardware khusus, dan keseluruhan bagian tersebut dapat beroperasi secara paralel.

Teknologi pipeline yang digunakan pada komputer bertujuan untuk meningkatkan kinerja dari komputer. Atau secara sederhana, pipeline adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersamaan tetapi dalam tahap yang berbeda yang dialirkan secara kontiniu pada unit pemrosesan. Dengan cara ini, maka unit pemroses selalu bekerja.

Cara kerja masing-masing unit pada pipeline

1 mengambil instruksi dari memori dan menempatkan instruksi tersebut dalam sebuah penyangga sampai instruksi itu dibutuhkan. 
2 mendekodekan instruksi tersebut, menentukan jenisnya dan operand apa yang dibutuhkan instruksi tersebut. 
3 melokasi dan mengambil operand-operand, baik itu dari register-register ataupun dari memori. 
4 sebenarnya melaksanakan pekerjaan menjalankan instruksi tersebut, terutama dengan menjalankan operand-operand melalui jalur data. 
5 menulis hasilnya kembali ke register yang sesuai.

Kita dapat melihat bagaimana pipeline tersebut beroperasi sebagai suatu fungsi waktu. Selama siklus jam (waktu) 1, Sl sedang menangani instruksi 1, dengan mengambilnya dari memori. Selama siklus 2, tahap S2 mendekodekan instruksi 1, sedangkan tahap Sl mengambil instruksi 2. Selama siklus 3, tahap S3 mengambil operand-operand dari instruksi 1, tahap S2 mendekodekan instruksi 2, dan tahap Sl mengambil instruksi ketiga. Selama siklus 4, tahap S4 menjalankan instruksi 1, S3 mengambil operand-operand untuk instruksi 2, S2 mendekodekan instruksi 3, dan Sl mengambil instruksi 4. Terakhir, selama siklus 5, S5 menulis kembali hasil instruksi 1, sementara tahap-tahap lainnya menangani instruksi-instruksi berikutnya.

Mari kita lihat sebuah contoh untuk lebih memperjelas konsep pipeline. Bayangkan sebuah pabrik kue di mana proses pembakaran dan pengemasan kue-kue untuk pengiriman dilakukan secara terpisah. Misalkan bahwa departemen pengiriman memiliki sebuah ban berjalan pembawa panjang dengan lima pekerja (satuansatuan pemrosesan) yang berdiri berjejer sepanjang ban berjalan tersebut. Setiap 10 detik (siklus jam), pekerja 1 menempatkan sebuah kotak kue kosong pada ban tersebut. Kotak tersebut dibawa ke pekerja 2, yang memasukkan sebuah kue ke dalam kotak itu. Sesaat kemudian, kotak tersebut sampai di pos kerja pekerja 3, yang kemudian menutup dan menyegel kotak tersebut. Selanjutnya kotak tersebut diteruskan ke pekerja 4, yang memasang sebuah label pada kotak kue itu. Terakhir, pekerja 5 memindahkan kotak tersebut dari ban dan memasukkannya dalam sebuah kontainer besar untuk kemudian dikirim ke beberapa supermarket. Pada dasarnya, cara kerja seperti ini juga berlaku pada pipelining komputer: Setiap instruksi (kue) melalui beberapa langkah pemrosesansebelum mencapai hasil sempurna pada akhir proses.

Kembali ke pipeline, misalkan bahwa masing-masing tahapan siklus waktu mesin ini adalah 2 nsec. Maka sebuah instruksi membutuhkan siklus waktu 10 nsec untuk menempuh lima tahap pipeline. Sepintas, dengan dibutuhkannya waktu 10 nsec untuk sebuah instruksi, kelihatan bahwa mesin tersebut dapat menjalankan 100 MIPS. Namun sebenarnya mesin tersebut dapat menjalankan instruksi yang lebih besar dari jumlah ini. Pada setiap tahap siklus waktu (2 nsec), satu instruksi baru diselesaikan, sehingga jumlah pemrosesan instruksi yang sebenarnya adalah 500 MIPS, bukan 100 MIPS.

Pipelining memungkinkan terjadinya perimbangan antara latensi (berapa lama waktu yang dibutuhkan untuk menjalankan sebuah instruksi), dan lebar pita processor (berapa banyak MIPS yang dimiliki CPU). Dengan siklus waktu Tnsec, dan tahap-tahap n dalam pipeline, maka latensinya adalah nT nsec dan lebar pitanya adalah 1000/T MIPS (logikanya, karena kita sedang mengukur jumlah waktu dalam nanodetik, maka seharusnya kita mengukur lebar pita CPU dalam BIPS atau GIPS, tapi hal ini tidak dilakukan, jadi kita tidak memilih salah satu dari keduanya).

Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistem komputer. Bisa pada level yang tinggi, misalnya program aplikasi, sampai pada tingkat yang rendah, seperti pada instruksi yang dijalankan oleh microprocessor.

A. Pipeline Pada Microprocessor

Teknik pipeline yang diterapkan pada microprocessor, dapat dikatakan sebuah arsitektur khusus. Ada perbedaan khusus antara model microprocessor yang tidak menggunakan arsitektur pipeline dengan microprocessor yang menerapkan teknik ini.

Pada microprocessor yang tidak menggunakan pipeline, satu instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat dilaksanakan. Sedangkan dalam microprocessor yang menggunakan teknik pipeline, ketika satu instruksi sedangkan diproses, maka instruksi yang berikutnya juga dapat diproses dalam waktu yang bersamaan. Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam tahap proses yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah instruksi.

Misalnya sebuah microprocessor menyelesaikan sebuah instruksi dalam 4 langkah. Ketika instruksi pertama masuk ke langkah 2, maka instruksi berikutnya diambil untuk diproses pada langkah 1 instruksi tersebut. Begitu seterusnya, ketika instruksi pertama masuk ke langkah 3, instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke langkah 1.

Dengan penerapan pipeline ini pada microprocessor akan didapatkan peningkatan dalam unjuk kerja microprocessor. Hal ini terjadi karena beberapa instruksi dapat dilakukan secara parallel dalam waktu yang bersamaan. Secara kasarnya diharapkan akan didapatkan peningkatan sebesar K kali dibandingkan dengan microprocessor yang tidak menggunakan pipeline, apabila tahapan yang ada dalam satu kali pemrosesan instruksi adalah K tahap.

Teknik pipeline ini menyebabkan ada sejumlah hal yang harus diperhatikan sehingga ketika diterapkan dapat berjalan dengan baik. Tiga kesulitan yang sering dihadapi ketika menggunakan teknik pipeline ini adalah : Terjadinya penggunaan resource yang bersamaan, Ketergantungan terhadap data, Pengaturan Jump ke suatu lokasi memori.

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.

Dengan menerapkan teknik pipeline ini, akan ditemukan sejumlah perhatian yang khusus terhadap beberapa hal di atas, tetapi tetap akan menghasilkan peningkatan yang berarti dalam kinerja microprocessor. Ada kasus tertentu yang memang sangat tepat bila memanfaatkan pipeline ini, dan juga ada kasus lain yang mungkin tidak tepat bila menggunakan teknologi pipeline.

B. Arsitektur Superskalar

Derajat konkurensi yang lebih tinggi dapat dicapai jika banyak pipeline instruksi diterapkan pada prosesor. Hal ini berarti digunakannya banyak unit fungsional, menciptakan jalur paralel dimana berbagai instruksi yang berbeda dapat dieksekusi secara paralel. Dengan pengaturan tersebut, maka dimungkinkan untuk memulai beberapa instruksi pada tiap siklus clock. Mode operasi ini disebut eksekusi superscalar. Jika mode ini dapat bertahan dalam waktu yang lama selama eksekusi program, maka instruksi-instruksi yang dilakukan memory dapat dipercepat. Tentu saja, eksekusi paralel harus mempertahankan kebenaran logika program, sehingga hasil yang diperoleh harus sama dengan hasil dari eksekusi serial instruksi program. Banyak dari prosesor performa tinggi saat ini didesain untuk bekerja dengan cara tersebut.

Di sini suatu satuan membaca instruksi tunggal mengambil pasangan-pasangan dari instruksi-instruksi secara bersama dan memasukkan masing-masing pasangan ke dalam pipelinenya sendiri, lengkap dengan ALUnya sendiri bagi operasi paralel. Agar dapat beroperasi secara paralel, kedua instruksi tersebut tidak boleh berebutan dalam menggunakan sumber daya (contoh, register-register), dan salah satu instruksi tidak boleh bergantung pada hasil dari instruksi yang lain. Seperti halnya dengan sebuah pipeline tunggal, begitu pula kompiler harus menjamin situasi ini tetap terjaga (yaitu, hardware tidak memeriksa dan memberikan hasil-hasil yang salah jika instruksi-instruksi tidak sebanding), atau konflik-konflik dideteksi dan dihilangkan selama pelaksanaan dengan menggunakan hardware tambahan.

Meskipun pipeline-pipeline, tunggal atau ganda, sebagian besar digunakan pada mesin-mesin RISC (komputer 386 dan generasi-generasi pendahulunya tidak memiliki pipeline satupun), Intel 486 adalah yang pertama kali mulai memperkenalkan pipeline-pipeline ke dalam CPU-CPUnya. Intel 486 memiliki satu pipeline dan Pentium memiliki dua pipeline lima tahap, meskipun pembagian tugas sebenarnya antara tahap 2 dan tahap 3 (pada gambar di atas yang disebut decode1 dan decode2) sedikit berbeda dibanding dalam contoh kita.

Pipeline utama, yang disebut pipeline u, dapat menjalankan sebuah instruksi Pentium yang selalu berubah-ubah. Pipeline kedua, yang disebut pipeline v, dapat menjalankan hanya instruksi-instruksi integer sederhana (dan juga satu instruksi titik mengambang sederhanaFXCH). Peraturan-peraturan yang rumit menentukan apakah sepasang instruksi sebanding sehingga mereka dapat dijalankan secara paralel. Jika instruksi-instruksi yang berpasangan tidak cukup sederhana atau tidak sebanding, hanya pasangan pertama yang dijalankan (dalam pipeline u). Pasangan kedua kemudian disimpan dan dipasangkan dengan instruksi berikutnya. Instruksi-instruksi selalu dijalankan secara berurutan. Jadi kompiler-kompiler khusus Pentium yang memproduksi pasangan-pasangan instruksi yang sebanding dapat memproduksi program-program yang beroperasi lebih cepat dibanding kampiler-kompiler lama.

Beralih ke empat pipeline dapat dilakukan, namun bila hal ini dilakukan akan menduplikat terlalu banyak hardware. Bahkan, suatu pendekatan berbeda digunakan pada highend CPU. Ide dasarnya adalah untuk memiliki hanya satu pipeline tunggal namun pipeline tersebut memiliki berbagai macam satuan fungsi, seperti ditunjukkan pada Gambar 7.5. Contoh, Pentium III memiliki suatu struktur yang mirip dengan gambar. Istilah arsitektur superskalar ditetapkan bagi pendekatan ini pada 1987 (Agerwala dan Cocke, 1987). Namun sebenarnya pendekatan ini telah digunakan pada komputer CDC 6600 30 tahun sebelumnya. Komputer 6600 ini mengambil sebuah instruksi setiap 100 nsec dan membawa instruksi tersebut ke salah satu dari 10 satuan fungsional untuk dijalankan secara paralel sementara CPU beroperasi untuk mendapatkan instruksi baru.

Yang tersirat dalam ide mengenai prosesor superskalar adalah bahwa tahap S3 dapat mengeluarkan instruksi-instruksi lebih cepat daripada tahap S4 dalam menjalankan instruksi-instruksi tersebut. Jika tahap S3 mengeluarkan sebuah instruksi setiap 10 nsec dan seluruh satuan fungsional dapat melaksanakan tugas mereka dalam 10 nsec, maka tidak lebih dari satu satuan yang akan benar-benar sibuk, terlepas dari ide keseluruhan. Dalam kenyataanya, sebagian besar satuan Fungsional dalam tahap S4 membutuhkan kira-kira lebih dari satu siklus detak untuk menjalankan instruksi-instruksi, dan tentu saja satuan-satuan tersebut adalah satuan-satuan yang dapat mengakses memori atau mengoperasikan aritmetik. Seperti dapat dilihat dari gambar tersebut, ada kemungkinan untuk memiliki berbagai macam ALU pada tahap S4. Permintaan untuk komputer-komputer dengan kecepatan yang lebih tinggi tampaknya sulit dipenuhi. Para astronom ingin mensimulasi apa yang terjadi pada mikrodetik pertama setelah terjadi big bang (dentuman besar), para ahli ekonomi ingin memodelkan perekonomian dunia, dan para remaja ingin memainkan game-game multimedia interaktif 3D melalui internet dengan teman-teman virtualnya. Meskipun CPU-CPU semakin cepat, pada akhirnya mereka akan menemui masalah berkaitan dengan kecepatan cahaya, yang mungkin tetap pada 20 cm/nanodetik dalam kabel tembaga atau serat optik, terlepas dari seberapa pintarnya para insinyur Intel. Demikian pula halnya dengan chip-chip yang berkecepatan tinggi, akan menghasilkan lebih banyak panas; yang penyebaran panas itu sendiri justru merupakan suatu masalah.

Paralelisme instruk silevel sedikit membantu, tapi pipeline dan operasi superskalar jarang memperoleh hasil lebih dari suatu faktor lima atau sepuluh. Untuk memperoleh hasil 50, 100, atau lebih, satus-atunya cara adalah mendesain komputer dengan berbagai macam CPU, untuk itu sekarang kita akan melihat bagaimana sebagian dari CPU-CPU ini diorganisasikan.



Pipeline by Hartanto on Scribd

Sumber
Read more ...

Memori Cache

Senin, 30 Oktober 2017
Pengertian dan Fungsi Cache Memory Pada Komputer

Pengertian dan Fungsi Cache Memory Pada Komputer - Pengertian Cache Memory adalah memory yang berukuran kecil yang sifatnya temporary (sementara). Walaupun ukuran filenya sangat kecil namun kecepatannya sangat tinggi. Dalam terminologi hadware, istilah ini biasanya merujuk pada memory berkecepatan tinggi yang menjembatani aliran data antara processor dengan memory utama (RAM) yang biasanya memiliki kecepatan yang lebih rendah.

Fungsi dari Cache Memory adalah sebagai tempat menyimpan data sementara atau intruksi yang diperlukan oleh processor. Secara gampangnya, cache berfungsi untuk mempercepat akses data pada komputer karena cache menyimpan data atau informasi yang telah di akses oleh suatu buffer, sehingga meringankan kerja processor. Jadi Bisa disimpulkan fungsi cache memory yaitu:

  • Mempercepat Akses data pada komputer 
  • Meringankan kerja prosessor 
  • Menjembatani perbedaan kecepatan antara cpu dan memory utama. 
  • Mempercepat kinerja memory. 

Cara kerja dari Cache Memory
Jika prosesor membutuhkan suatu data, pertama-tama dia akan mencarinya pada cache. Jika data ditemukan, prosesor akan langsung membacanya dengan delay yang sangat kecil. Tetapi jika data yang dicari tidak ditemukan,prosesor akan mencarinya pada RAM yang kecepatannya lebih rendah. Pada umumnya, cache dapat menyediakan data yang dibutuhkan oleh prosesor sehingga pengaruh kerja RAM yang lambat dapat dikurangi. Dengan cara ini maka memory bandwidth akan naik dan kerja prosesor menjadi lebih efisien. Selain itu kapasitas memori cache yang semakin besar juga akan meningkatkan kecepatan kerja komputer secara keseluruhan. Dua jenis cache yang sering digunakan dalam dunia komputer adalah memory caching dan disk caching. Implementasinya dapat berupa sebuah bagian khusus dari memori utama komputer atau sebuah media penyimpanan data khusus yang berkecepatan tinggi.

Implementasi memory caching sering disebut sebagai memory cache dan tersusun dari memori komputer jenis SDRAM yang berkecepatan tinggi. Sedangkan implementasi disk caching menggunakan sebagian dari memori komputer.

Letak Cache Memory di komputer

  • Terdapat di dalam Processor (on chip ),Cache internal diletakkan dalam prosesor sehingga tidak memerlukan bus eksternal, maka waktu aksesnya akan sangat cepat sekali.
  • Terdapat diluar Processor(off chip), Berada pada MotherBoard memori jenis ini kecepatan aksesnya sangat cepat,meskipun tidak secepat chache memori jenis pertama.

Letak Cache Memory
  1. Terdapat di dalam Processor (on chip )
Cache internal diletakkan dalam prosesor sehingga tidak memerlukan bus eksternal, maka waktuaksesnya akan sangat cepat sekali
       2.       Terdapat diluar Processor(off chip)
Berada pada MotherBoard, memori jenis ini kecepatan aksesnya sangat cepat, meskipun tidak secepat chache memori jenis pertama.


Jenis Cache Memory
1.   L1 cache L1 Cache adalah Sejumlah kecil SRAM memori yang digunakan sebagai cache yang terintegrasi menyatu pada prosesor.
  • Berguna untuk menyimpan secara sementara instruksi dan data, dan memastikan bahwa prosesor memiliki supply data yangstabil untuk diproses sementara memori mengambil dan menyimpan data baru.
  • L1 cache (Level 1 cache) disebut pula dengan istilah primary cache, first cache, atau level one cache.
  • transfer data dari L1 cache ke prosesor terjadi paling cepat Kecepatannya mendekati kecepatan register

2.  L2 cache Arti istilah L2 Cache adalah Sejumlah kecil SRAM memori yang berada di motherboard dekat dengan posisi dudukan prosesor.
  •  Berguna untuk menyimpan sementara instruksi dan data, dan memastikan bahwa prosesor memiliki supply data yangstabil untuk diproses sementara memori mengambil dan menyimpan data baru
  • (Level 2 cache) secondary cache, second level cache, atau level two cache.
  • L2 cache memiliki ukuran lbih besar dibandingkan L1 namun kecepatan transfernya sedikit lebih lama dari L1cache.
3. L3 cache jarang sekali ada, hanya ada di komputer tertentu.
  •  Berguna ketika terdapat cache yang hilang ”missing” pada cache L1&L2
  • L3 cache memiliki ukuran lbih besar dibandingkan L1 dan L2 namun kecepatan transfernya lebih lama dari L1cache dan L2 Cache. 
Elemen Cache Memory
-       Fungsi Pemetaan (Mapping) 
  1. Pemetaan blok-blok memori utama ke dalam saluran cache.
  2. Pemetaan Langsung (Direct Mapping)
  3. Pemetaan Asosiatif  (Associative Mapping)
  4.  Pemetaan Asosiatif Set (Set Associative Mapping)
-       Algoritma Penggantian 
Untuk memilih blok data mana yang ada di cache yang dapat diganti dengan blok  data baru
  1. Least Recently used (LRU)
  2. First in first out (FIFO)
  3. Least frequently used (LFU)
  4. Random

Cara Kerja Cache Memori

  1. CPU membaca word memori  
  2. Periksa di Cache Memory
  3. Jika ada akan dikirim ke CPU
  4. Jika tidak ada akan dicari ke Memory Utama 
  5. Dikirim ke Cache Memory lalu dikirim ke CPU
KESIMPULAN
      Karena kecepatan memori utama yang rendah dibandingkan dengan kecepatan prosesor, maka sangat diperluka sekali cache sebagai antisipasi terhadap permintaan data memori yang akan digunakan CPU. Apabila data diambil langsung dari memori utama atau maka akan memakan waktu lama yang menyebabkan dapat membuang waktu dengan menunggu untuk mengskses intruksi dan data pada memory utama.
Maka Cache Memory masih diperlukan sekali oleh komputer.







Cache Memory by Hartanto on Scribd
Read more ...

Piranti Memory

Selasa, 03 Oktober 2017
  Memori merupakan bagian dari komputer yang berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik-baiknya. Memori biasanya disebut juga dengan istilah : computer storage, computer memory atau memory, merupakan piranti komputer yang digunakan sebagai media penyimpan data dan informasi saat menggunakan komputer. Memory merupakan bagian yang penting dalam komputer modern dan letaknya di dalam CPU (Central Processing Unit).
Sebagian besar komputer memiliki hirarki memori yang terdiri atas tiga level, yaitu:
Physical Register di CPU, berada di level teratas. Informasi yang berada di register dapat diakses dalam satu clock cycle CPU.

Secara Umum Terdapat empat type umum memori, yaitu:
1.      Memori Hanya Baca (Read Only Memory)
2.      Memori Flash (EEPROM)
3.      Statik Random Access Memory (SRAM)
4.      Dynamic Random Access Memory (DRAM)
Hubungan Pin Memory
Hubungan Pin yang umum untuk semua piranti memori adalah:

1. Hubungan Alamat
Semua peranti memori memiliki n input alamat yang memilih satu dari 2n lokasi didalamnya. Input alamat hampir selalu diberi label A0 sampai An-1.

2. Hubungan Data
Hubungan data adalah titik dimana data dimasukkan untuk menyimpan atau dikeluarkan untuk pembacaan. Pin data pada peranti memoridiberi label D0 sampai D7 untuk peranti memori dengan lebar 8 Bit.

3. Hubungan Seleksi
Setiap peranti memori memiliki sebuah (atau lebih) input yang memilih (meng-enable)peranti memori. Contohnya : Chip Select (CS), Chip Enable(CE)

(ROM (READ ONLY MEMORY)
ROM secara permanen menyimpan program-program dan data yang bersifat menetap (residen) terhadap sistem serta harus tidak berubah jika listrik dimatikan (nonvolatile memory).
Beberapa type ROM

EPROM
Biasanya dibeli dalam jumlah yang banyak dari pabrik dan diprogram selama pembuatannya. Umumnya dipakai jika perangkat lunak harus sering diganti atau jika hanya ada jumlah yang sangat terbatas pada permintaan untuk membuat ROM ekonomis

PROM
Memori ini juga diprogram pada saat pembuatannya, tapi sekali diprogram tidak dapat dihapus.
EEPROM (flash memory)
Sering juga disebut EPROM (Electrically Erasable ROM) merupakan RAM yang tidak mudah berubah (nonvolatile RAM). Piranti ini dapat dihapus dengan listrik dalam sistem. Contoh 2716 eprom 2K

STATIK RAM (SRAM)
Memori RAM statis mempertahankan data selama daya DC diberikan. Karena tidak ada aksi khusus (kecuali daya) yang dibutuhkan untuk menampung data yang disimpan. Memori ini tidak akan menyimpan data tanpa daya (volatile memory). Contoh: TMS4016 SRAM 2K x 8

DINAMIK RAM (DRAM)
DRAM menampung data hanya 2 atau 4 ms pada kapasitor terpadu. Sesudah 2 atau 4 ms, seluruh isi dari DRAM harus ditulis kembali seluruhnya (refresh) karena kapasitor-kapasitor yang menyimpan logika 0 atau 1 kehilangan muatan (charge) mereka.

Perbedaan antar SRAM dan DRAM adalah pada DRAM seluruh isi dari memori direfresh dengan 256 pembacaan dalam interval 2 atau 4 ms. Refresh juga dilakukan selama penulisan, pembacaan dan refresh spesial. Contohnya : TMS 4464 DRAM 64K x 

Tujuan dari manajemen ini adalah untuk:
· Meningkatkan utilitas CPU
· Data dan instruksi dapat diakses dengan cepat oleh CPU
· Efisiensi dalam pemakaian memori yang terbatas
· Transfer dari/ke memori utama ke/dari CPU dapat lebih efisien

II. Penggunaan Memory
Komponen utama dalam sistem komputer adalah Arithmetic Logic Unit (ALU), Control Circuitry, Storage Space dan piranti Input/Output. Jika tanpa memory, maka komputer hanya berfungsi sebagai digital signal processing devices, contohnya kalkulator atau media player. Kemampuan memory untuk menyimpan data, instruksi dan informasi-lah yang membuat komputer dapat disebut sebagai general-purpose komputer.Komputer merupakan piranti digital, maka informasi disajikan dengan sistem bilangan binary. Teks, angka, gambar, sudio dan video dikonversikan menjadi sekumpulan bilangan binary (binary digit atau disingkat bit). Sekumpulan bilangan binary dikenal dengan istilah BYTE, dimana 1 byte = 8 bits. Semakin besar ukuran memory-nya maka semakin banyak pula informasi yang dapat disimpan di dalam komputer (storage devices).Berikut ini beberapa gambar yang bisa mewakili bagaimana cara informasi disimpan dalam memory dan bagaimana data ditransfer dari satu bagian ke bagian lainnya.
Gambar ini saya ambil dari buku Computers For Beginners USBORNE COMPUTER GUIDES. Jadi kalo kita menekan tombol B, maka huruf B itu dikonversikan menjadi bilangan binary 01000010.Gambar ini juga dari buku yang sama, jadi informasi yang diterima komputer ditransfer dari satu bagian ke bagian lain, misalnya dari Arithmetic Logic unit ke RAM, melalui bus atau electronic pathways yang ada di motherboar

DRAM biasanya ditempatkan pada papan sirkuit kecil disebut SIMM (Single In Line Memory Module). Terdapat dua jenis SIMM yaitu SIMM 30 pin dan SIMM 72 pin.

piranti-memori1 by Irfan Hadiyanto on Scribd

Read more ...

Motor Stepper

Minggu, 16 Juli 2017

  • Berikut adalah Flowchart CW


PROGRAM MOTOR STEPPER

//sesuaikan dengan PIN yang dipasang
int IN1=8;                                  
int IN2=9;
int IN3=10;
int IN4=11;
int step = 100;
int delaytime=40; //makin kecil delay, makin cepat motor berputar
void setup(){
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);
}
void loop(){
//maju 60;
for (int i=0; i<60; i++){
maju();
}
}
void maju(){
//step 4
step1();
delay(delaytime);
//step 3
step2();
delay(delaytime);
//step 2
step3();
delay(delaytime);
//step 1
step4();
delay(delaytime);
}
void mundur(){
//step 4
step4();
delay(delaytime);
//step 3
step3();
delay(delaytime);
//step 2
step2();
delay(delaytime);
//step 1
step1();
delay(delaytime);
}
void step1(){
digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,HIGH);
}
void step2(){
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
}
void step3(){
digitalWrite(IN1,HIGH);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
}
void step4(){
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);


Read more ...

Rancangan Instalasi GOR Olahraga

Minggu, 16 Juli 2017
1. Gambar Skema Instalasi Denah GOR



2. Wearing dan pengaplikasian simulasi instalasi GOR 
  • Sebelum MCB di On semua lampu dalam keadaan Off

  •  Setelah MCB ON Saklar R sebagai Pengatur Cahaya lapangan dinyalakan, Maka Setiap Saklar R akan Dapat menyalakan masing masing baris lampu yang sudah di seri.

  • Selanjutnya Saklar S yang juga tersambung dengan MCB dapat menyalakan Masing-masing saklar Pada rangkaian ruangan pada bagian bawah, yang terdapat ruangan musholla,kantin, dll

  • Selanjutnya Saklar T yang juga tersambung dengan MCB dapat Menyalakan Lampu Pada       ruangan yang ada disebelah kanan Gambar, termasuk runagn Kamar mandi laki-laki dan perempuan dan Gudang.

  • Selanjutnya, Bila keadaan Lampu dari Saklar R S T dinyalakan semua.



Wearing di atas menggunakan Software Visio dan E-KTS














Read more ...

Flowchart Pembangkit Listrik Tenaga Air Ukuran Kecil Untuk Rumah

Kamis, 16 Maret 2017

Gambar di atas adalah Flowchart dari Pembangkit Listrik Tenaga Air Dalam Ukuran Kecil Untuk Rumah

PEMBANGKIT LISTRIK TENAGA ANGIN MINI UNTUK RUMAH

Tenaga angin merupakan pengumpulan energi yang berguna dari angin. Pada 2005, kapasitas generator tenaga-angin adalah 58.982 MW, hasil tersebut kurang dari 1% penggunaan listrik dunia. Meskipun masih berupa sumber energi listrik minor di kebanyakan negara, penghasilan tenaga angin lebih dari empat kali lipat antara 1999 dan 2005.

Kebanyakan tenaga angin modern dihasilkan dalam bentuk listrik dengan mengubah rotasi dari pisau turbin menjadi arus listrik dengan menggunakan generator listrik. Pada kincir angin energi angin digunakan untuk memutar peralatan mekanik untuk melakukan kerja fisik, seperti menggiling “grain” atau memompa air.

Tenaga angin digunakan dalam ladang angin skala besar untuk penghasilan listrik nasional dan juga dalam turbin individu kecil untuk menyediakan listrik di lokasi yang terisolir.

Tenaga angin banyak jumlahnya, tidak habis-habis, tersebar luas, bersih, dan merendahkan efek rumah kaca.

Pembangkit listrik tenaga angin adalah suatu pembangkit listrik yang menggunakan angin sebagai sumber energi untuk menghasilkan energi listrik. Pembangkit ini dapat mengkonversikan energi angin menjadi energi listrik dengan menggunakan turbin angin atau kincir angin. Sistem pembangkitan listrik menggunakan angin sebagai sumber energi merupakan sistem alternatif yang sangat berkembang pesat, mengingat angin merupakan salah satu energi yang tidak terbatas di alam.

Sumber

Read more ...

Tugas Softskill Ke 3

Kamis, 19 Januari 2017
Nama : Hartanto
Npm   : 14414824
Kelas  : 3IB04-A
Tugas  : Uniform Series Arithmetic Gradient Cash Flow

Soal
1. Berapakah jumlah interest yang harus dibayarkan atas pinjaman yang diambil ke Bank sebanyak Rp. 5,000,000.- pada tanggal 1 April 1985 dan dikembalikan pada tanggal 31 Maret 1990 dengan simple interest 15% ?

2. Berapa besarkah dikembalikan tiap tahun suatu pinjaman sebesar Rp. 20,000,000.- selama 8 tahun dengan bunga 12 %?

3. Buatlah suatu diagram cash flow untuk pinjaman sebesar Rp. 10,500,000.- menurut simple interest 15% per-tahun selama 6 tahun. Berapakah lump sum dibayarkan pada akhir tahun ke-6 itu?

Jawaban

1. Dik : P = Rp. 5,000,000.
            r = 15%
            t = 1800

S = P (1+rt)
            = 5,000,000 (1+(15%x5))
            = Rp. 8,750,000

2. Dik : Nt = Rp. 20,000,000
               i = 12%
               t = 8 tahun
               i total = 12% x 8 = 96%

D = i% di bawah 100 x Nt
            = 96/100-96 x 20,000,000
            = 480,000,000

           NA = NT + D = 20,000,000 + 480,000,000 = Rp. 500,000,000

3. F = (F/P ; i% ; n)
    F = 10,500,000 (F/P ; 15% ; 6)
    F = P (1+i%) x n
    F = 10,500,000 (1+15%)^6
    F = 10,500,000 (1,15)^6
    F = 10,500,000 (2,313)
    F = Rp. 24,286,500





Uniform Series Arithmetic Gradient Cash Flow by Hartanto on Scribd

Read more ...

Who Am I?

Minggu, 15 Januari 2017
Nama saya Hartanto saya adalah salah satu mahasiswa Universitas Gunadarma jurusan Teknik Elektro. Saya memilih jurusan teknik elektro karna saya ingin lebih mengerti tentang instalasi listrik dan kebetulan saya juga waktu SMK dulu mengambil jurusan Listrik, yang membuat saya bertahan di jurusan teknik elektro adalah dari segi lingkungan teman di elektro baik baik dan dari mata kuliahnya juga cukup saya mengerti , pencapaian saya untuk di teknik elektro belum puas karna saya belum bisa membuat alat untuk Penulisan ilmiah dan Skripsi saya, jika untuk memikirkan melanjutkan pendidikan untuk S2 di teknik elektro lagi saya ingin tetapi setelah saya lulus dari S1 saya sukses  bisa mencari uang dengan asli jerih payah saya sendiri ,untuk membayar uang kuliah dan untuk kebutuhan ekonomi keseharian saya sendiri  agar tidak lagi merepotkan orang tua saya. Dengan setelah saya lulus dari gunadarma saya akan mencari uang dengan bekerja karna saya punya cita cita ingin menjadi penguasa yang sukses, dengan saya bekerja saya bisa mengumpulkan uang untuk membuka usaha, kalau  ngomong cerita tentang tujuan hidup untuk 5 tahun kedepan , Saya cerita singkatnya aja yah hehe :D . Saya ingin menjadi penguasaha sukses yang terkenal, semua kebutuhan ekonomi saya tercukupi , dengan saya sukses saya bisa membahagiakan orang tua saya, dan saya ingin mempunyai rumah tinggal sendiri untuk keluarga saya nanti ketika saya sudah menikah.


Terimakasih untuk temen temen semua yang udah mau baca artikel cerita singkat hidup saya hehe xD




Sistem Kontrol by Hartanto on Scribd



Dari jurnal yang saya dapatkan salah satu bahasan dalam mata kuliah sistem kontrol adalah kontrol PID yang sering digunakan dan banyak diberikan dalam materi sistem kontrol di perguruan tinggi.
Hal ini disebabkan karena sistem ini merupakan sistem kontrol loop tertutup yang cukup
sederhana dan kompatibel dengan sistem kontrol lainnya sehingga dapat dikombinasikan
dengan sistem kontrol lain seperti Fuzzy control, Adaptif control dan Robust control.

Salah satu materi yang diberikan adalah
perancangan sistem kontrol. Untuk dapat merancang sistem kontrol yang baik diperlukan
analisis untuk mendapatkan gambaran tanggapan sistem terhadap aksi pemgontrolan. Sebelum
dapat merancang sistem kontrol tentunya mahasiswa harus lebih dulu dibekali materi
pemodelan sistem dinamik. Sistem kontrol dibutuhkan untuk memperbaiki tanggapan
sistem dinamik agar didapat sinyal keluaran seperti yang diinginkan. Sistem kontrol yang
baik mempunyai tanggapan yang baik terhadap sinyal masukan yang beragam.

Dalam perancangan
sistem kontrol ini diperlukan gambaran tanggapan sistem dengan sinyal masukan
dan aksi pengontrolan yang meliputi :

  1. Tanggapan sistem terhadap masukan yang dapat berupa fungsi langkah, fungsi undak, fungsi impuls atau fungsi lainnya,
  2. Kestabilan sistem yang dirancang,
  3. Tanggapan sistem terhadap bergabai jenis aksi pengontrolan mendapatkan fungsi alih dari sistem tersebut.
Dan dari jurnal diatas mengajarkan Metode Pembelajaran Dengan Simulasi Komputer

Hadirnya software komputer sangat membantu perhitungan dan proses analisis
tanggapan sistem terhadap sinyal masukan dan aksi pengontrolan. Berbeda dengan
perhitungan manual yang rumit dan lama, perhitungan dengan bantuan software komputer
jauh lebih mudah dan cepat dan hasilnya tepat.
Read more ...