V-MC

(Villa Motor Club) sebuah club Motor yang berasal dari senggigi

tulisan pelangi

Senin, 06 Juni 2016

Maklah RISC vs CISC




MAKALAH

Organisasi & Arsitektur Komputer
( RISC VS CISC )

 
 
Oleh :
Ariyanto [ 1510530223]
Dodiy Fahmeyzan [1510530228]
Bimo Wicaksono D. [1510530237]
Harya Juliansyah [1510530260]


SEKOLAH TINGGI MANAJEMENT INFORMATIKA DAN KOMPUTER
STMIK BUMIGORA MATARAM
TEKNIK INFORMATIKA
2016


BAB I
PENDAHULUAN
1.1  LATAR BELAKANG

Pada saat ini prosesor saat ini yang dikenal ada 2 yaitu. RISC dan CISC. Prosesor CISC merupakan  prosesor yang memiliki intruksi yang kompleks untuk memudahkan penulisan program bahasa assembly, sedangkan RISC memliki instruksi yang sederhana yang dapat di eksekusi dengan cepat . prosesor RISC di buat dalam luasan keping semikonduktor yang relatif lebih sempit dengan jumlah komponen yang lebih sedikit dibandingkan dengan CISC. keduanya mempunyai perbedaan dalam perancangan kompilatornya. RISC dan CISC keduanya memiliki kelebihan dan kekurangan dalam pengunaannya.

1.2  TUJUAN
Tujuan di buatnya makalah ini adalah :
a.       Untuk mengetahui kelebihan dan kekurangan pada RISC dan CISC
b.      Untuk memahami tentang RISC dan CISC










BAB II
ISI
2.1 Pengertian
2.1.1 CISC
            CISC adalah singkatan dari Complex Intruction Set Computer dimana prosesor tersebut memiliki set instruksi yang kompleks dan lengkap. CISC sendiri adalah salah satu bentuk arsitektur yang menjalani beberapa instruksi dengan tingkat yang rendah. Misalnya intruksi tingakt rendah tersebut adalah operasi aritmetika, penyimpanan-pengambilan dari memory dll. CISC memang memiliki instruksi yang complex dan memang dirasa berpengaruh pada kinerjanya yang lebih lambat. CISC menawarkan set intruksi yang powerful, kuat, tangguh, maka tak heran jika CISC memang hanya mengenal bahasa asembly yang sebenarnya ia tujukan bagi para programmer. Oleh karena itu ,CISC hanya memerlukan sedikit instruksi untuk berjalan. Sistem mikrokontroler selalu terdiri dari perangkat keras (hardware) dan perangkat lunak (software). Perangkat lunak ini merupakan deretan perintah atau instruksi yang dijalankan oleh prosesor secara sekuensial. Instruksi itu sendiri sebenarnya adalah bit-bit logik 1 atau 0 (biner) yang ada di memori program. Angka-angka biner ini jika lebarnya 8 bit disebut byte dan jika 16 bit disebut word. Deretan logik biner inilah yang dibaca oleh prosesor sebagai perintah atau instruksi. Supaya lebih singkat, angka biner itu biasanya direpresentasikan dengan bilangan hexa (HEX). Tetapi bagi manusia, menulis program dengan angka biner atau hexa sungguh merepotkan. Sehingga dibuatlah bahasa assembler yang direpresentasikan dengan penyingkatan kata-kata yang cukup dimengerti oleh manusia.

Bahasa assembler ini biasanya diambil dari bahasa Inggris dan presentasinya itu disebut dengan Mnemonic. Masing-masing pabrik mikroprosesor melengkapi chip buatannya dengan set instruksi yang akan dipakai untuk membuat program.

Biner               Hexa                Mnemonic
10110110        B6                   LDAA ...
10010111        97                   STAA ...
01001010        4A                   DECA ...
10001010        8A                   ORAA ...
00100110        26                    BNE ...
00000001        01                    NOP...
01111110        7E                    JMP ...


Jadi sebenarnya Tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan, instruksi akan membaca dua nilai dan menyimpannya ke 2 register yang berbeda, melakukan perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register yang benar. Jadi instruksi-nya cukup satu saja

2.1.2 RISC

RISC adalah singkatan dari Reduced Instruction Set Computer yang artinya prosesor tersebut memiliki set instruksi program yang lebih sedikit. Karena perbedaan keduanya ada pada kata set instruksi yang kompleks atau sederhana (reduced). RISC lahir pada pertengahan 1980, kelahirannya ini dilator belakangi untuK CISC. Perbedaan mencolok dari kelahiran RISC ini adalah tidak ditemui pada dirinya instruksi assembly atau yang dikenal dengan bahasa mesin sedangkan itu banyak sekali di jumpai di CISC.

Konsep arsitektur RISC banyak menerapkan proses eksekusi pipeline. Meskipun jumlah perintah tunggal yang diperlukan untuk melakukan pekerjaan yang diberikan mungkin lebih besar, eksekusi secara pipeline memerlukan waktu yang lebih singkat daripada waktu untuk melakukan pekerjaan yang sama dengan menggunakan perintah yang lebih rumit. Mesin RISC memerlukan memori yang lebih besar untuk mengakomodasi program yang lebih besar. IBM 801 adalah prosesor komersial pertama yang menggunakan pendekatan RISC.Lebih lanjut untuk memahami RISC, diawali dengan tinjauan singkat tentang karakteristik eksekusi instruksi.

Aspek komputasi yang ditinjau dalam merancang mesin RISC adalah sbb.:

>>Operasi-operasi yang dilakukan:
Hal ini menentukan fungsi-fungsi yang akan dilakukan oleh CPU dan interaksinya dengan memori.

>> Operand-operand yang digunakan:
Jenis-jenis operand dan frekuensi pemakaiannya akan menentukan organisasi memori untuk
menyimpannya dan mode pengalamatan untuk mengaksesnya.

>> Pengurutan eksekusi:
Hal ini akan menentukan kontrol dan organisasi pipeline.



Gambar 2.1 RISC dan CISC
2.2 Perbedaan CISC dan RISC
            CISC dan RISC perbedaannya tidak signifikan jika hanya dilihat dari terminologi set instruksinya yang kompleks atau tidak (reduced). Lebih dari itu, RISC dan CISC berbeda dalam filosofi arsitekturnya. Filosofi arsitektur CISC adalah memindahkan kerumitan software ke dalam hardware. Teknologi pembuatan IC saat ini memungkinkan untuk menamam ribuan bahkan jutaan transistor di dalam satu dice. Bermacam-macam instruksi yang mendekati bahasa pemrogram tingkat tinggi dapat dibuat dengan tujuan untuk memudahkan programmer membuat programnya. Beberapa prosesor CISC umumnya memiliki microcode berupa firmware internal di dalam chip-nya yang berguna untuk menterjemahkan instruksi makro. Mekanisme ini bisa memperlambat eksekusi instruksi,
namun efektif untuk membuat instruksi-instruksi yang kompleks. Untuk aplikasi-aplikasi tertentu yang membutuhkan singlechip komputer, prosesor CISC bisa menjadi pilihan.

2.2.1 Karakteristik CISC dan RISC
Ø  Rancangan RISC dapat memperoleh keuntungan dengan mengambil sejumlah feature CISC dan Rancangan CISC dapat memperoleh keuntungan dengan mengambil sejumlah feature RISC.
Ø  Hasilnya adalah bahwa sejumlah rancangan RISC yang terbaru, yang dikenal sebagai PowerPC, tidak lagi “murni” RISC dan rancangan CISC yang terbaru, yang dikenal sebagai Pentium, memiliki beberapa karakteristik RISC.

2.2.2 Ciri-ciri RISC

Ø  Instruksi berukuran tunggal
Ø  Ukuran yang umum adalah 4 byte.
Ø  Jumlah mode pengalamatan data yang sedikit, biasanya kurang dari lima buah.
Ø  Tidak terdapat pengalamatan tak langsung.
Ø  Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmetika (misalnya, penambahan dari memori, penambahan ke memori).
2.2.3 Ciri-Ciri CISC
Ø  Penekanan pada perangkat keras (hardware) 
Ø  Termasuk instruksi kompleks multi-clock
Ø  Memori-ke-memori: “LOAD” dan “STORE” saling bekerjasama
Ø  Ukuran kode kecil, kecepatan rendah
Ø  Transistor digunakan untuk menyimpan instruksi-instruksi kompleks

Sebaliknya, filosofi arsitektur RISC adalah arsitektur prosesor yang tidak rumit dengan membatasi jumlah instruksi hanya pada instruksi dasar yang diperlukan saja. Kerumitan membuat program dalam bahasa mesin diatasi dengan membuat bahasa program tingkat tinggi dan compiler yang sesuai. Karena tidak rumit, teorinya mikroprosesor RISC adalah mikroprosesor yang low-cost dalam arti yang sebenarnya. Namun demikian, kelebihan ruang pada prosesor RISC dimanfaatkan untuk membuat sistem-sistem tambahan yang ada pada prosesor modern saat ini. Banyak prosesor RISC yang di dalam chip-nya dilengkapi dengan sistem superscalar, pipelining, caches memory, register-register dan sebagainya, yang tujuannya untuk membuat prosesor itu menjadi semakin cepat.


Tabel 2.1 perbedaan CISC dan RISC
2.3 Contoh Aplikasi RISC
            Atmel AVR adalah modifikasi arsitektur Harvard 8-bit RISC single chip microcontroller  yang di kembangkan oleh atmel pada 1996 . AVR adalah satu dari keluarga mikrokontroller pertama yang menggunakan memori on-chip flash untuk penyimpanan program, sebagai lawan untuk progammable one time pada ROM, EPROM atau EEPROM digunakan oleh mikrokontroller lain.

Gambar 2.2 Atmel AVR Atmega 8
BAB III
PENUTUP
3.1 KESIMPULAN
                  CISC Complex Instruction Set Computer sedangkan RISC merupakan kepanjangan dari Reduced Instruction Set Computer. Chip RISC dibangun mulai pertengahan tahun 1980 sebagai pengganti chip CISC. Pada dasarnya karakteristik CISC yg "sarat informasi" memberikan keuntungan di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang. Hal inilah yang menyebabkan komputer-komputer pada saat itu memiliki harga yang murah. 
        Filosofi RISC berada dalam tidak satu pun chip yang menggunakan bahasa instruksi assembly yang complex, seperti yang digunakan di CISC. Untuk itulah, instruksi yang simple dan lebih cepat akan lebih baik daripada besar, complex dan lambat seperti CISC. Keuntungan RISC lainnya karena adanya instruksi yang simple, maka chip RISC hanya memiliki beberapa transistor, yang akan membuat RISC mudah didesain dan murah untuk diproduksi untuk menulis compiler yang powerful. RISC memberikan kemudahan di hardware, namun lebih kompleks di software. 













DAFTAR PUSTAKA
Ø  https://www.scribd.com/doc/156541419/Makalah-RISC-Dan-CISC


Sabtu, 14 Mei 2016

Makalah Modul Input-Output & Kode Hamming




MAKALAH
Organisasi & Arsitektur Komputer
Modul Input-Output & kode Hamming






Oleh :
Ariyanto [ 1510530223]
Dodiy Fahmeyzan [1510530228]
Bimo Wicaksono D. [1510530237]
Harya Juliansyah [1510530260]


SEKOLAH TINGGI MANAJEMENT INFORMATIKA DAN KOMPUTER
STMIK BUMIGORA MATARAM
TEKNIK INFORMATIKA
2016





Kata Pengantar

            Puji dan Syukur Penulis Panjatkan ke Hadirat Tuhan Yang Maha Esa karena berkat limpahan Rahmat dan Karunia-Nya sehingga penulis dapat menyusun makalah ini tepat pada waktunya. Makalah ini membahas mengenai “Modul Input-Output & Kode Hamming”.
Dalam penyusunan makalah ini, penulis banyak mendapat tantangan dan hambatan akan tetapi dengan bantuan dari berbagai pihak tantangan itu bisa teratasi. Olehnya itu, penulis mengucapkan terima kasih yang sebesar-besarnya kepada semua pihak yang telah membantu dalam penyusunan makalah ini, semoga bantuannya mendapat balasan yang setimpal dari Tuhan Yang Maha Esa.
Penulis menyadari bahwa makalah ini masih jauh dari kesempurnaan baik dari bentuk penyusunan maupun materinya. Kritik konstruktif dari pembaca sangat penulis harapkan untuk penyempurnaan makalah selanjutnya.
Akhir kata semoga makalah ini dapat memberikan manfaat kepada kita sekalian.

Mataram, 14 Mei 2016

 Kelompok 1











DAFTAR ISI

KATA PENGANTAR               ....................................................................................................ii  
DAFTAR ISI              ..................................................................................................................iii
BAB 1 PENDAHULUAN             ..............................................................................................1
A.    Latar Belakang           ........................................................................................................1
B.     Rumusan Masalah             .................................................................................................2
C.     Tujuan Pembahasan              ..............................................................................................2
BAB II PEMBAHASAN           ..................................................................................................3
A.    Pengertian Modul Input-Output       ....................................................................................3
B.     Fungsi Input-Output                         ....................................................................................4
C.     Struktur Modul Input-Output           ....................................................................................5
D.    Teknik Input-Output                         ....................................................................................5
E.     Kode Hamming              ......................................................................................................7
BAB III PENUTUP                  ..................................................................................................14
A.    Kesimpulan               .......................................................................................................14
B.     Saran              ..................................................................................................................14
DAFTAR PUSTAKA            ......................................................................................................15

BAB I
PENDAHULUAN
A.    Latar Belakang
Sistem computer memiliki tiga komponen utama, yaitu : CPU, Memory (primer  & sekunder), dan peralatan masukan/keluaran (I/O) seperti printer, monitor, keyboard, mouse dan modem. Dalam menjalankan fungsinya sebagai masukan dan keluaran diperlukan modul I/O. Modul I/O merupakan peralatan antarmuka (interface) bagi sistem bus atau switch, sentral dan mengontrol satu atau lebih perangkat periperhal. Modul I/O tidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisi logika dalam melakukan fungsi komunikasi antara peripheral dan bus komputer.
Ada beberapa alasan kenapa tidak langsung dihubungkan dengan bus computer yaitu: Bervariasinya metode operasi piranti periperhal, sehingga tidak praktis apabila system computer harus menangani berbagai macam system operasi periperhal tersebut. Kecepatan transfer data piranti periperhal umumnya lebih lambat dari pada laju transfer data pada CPU Format dan panjang data   pada piranti periperhal seringkali berbeda dengan CPU, sehingga perlu modul untuk menselaraskannya. Dari beberapaalas andiatas, modul I/O memiliki 2 buah fungsi utama, yaitu:Sebagai piranti antar muka ke CPU dan memori melalui bus system dan sebagai piranti antar muka dengan peralatan periperhal lainnya menggunakan link data tertentu.
Ada beberapa metode yang digunakan untuk mendeteksi error dan mengkoreksi error yang terjadi. Salah satu-nya adalah dengan menggunakan metode hamming code. Metode ini merupakan salah satu jenis linier error correction code yang sederhana.keuntungan yang didapatkan dengan metode ini adalah cara kerjanya yang cukup sederhana dan tidak membutuhkan alokasi memori yang banyak. Oleh karena itu kelompok kami termmotovasi untuk mengungkap konsep dan mengimplementasikan metode hamming code tersebut untuk melakukan pemeriksaan dan pemulihan kesalahan ( error ) pada data berbentuk teks yang ditransmisikan dari computer yang kita gunakan. Dengan menggunakan metode hamming code kita dapat meminimalisir terjadinya kerusakan pada proses transmisi data.

B.     Rumusan Masalah
Dari latar belakang di atas, adapun rumusan masalah yang dapat kami susun adalah sebagai berikut :
1. Input-Output
-      ApakahpengertiandarimodulInput/Output?
-      BagaimanakahFungsidarimodulInput/Output ?
-      BagaimanakahStrukturdarimodulInput/Output ?
-      BagaimanakahTeknikdariInput/Output ?
2. Kode Hamming
-      Pengertian Kode Hamming
-      Implementasi Kode Hamming
-    Pengertian Bit Parity
-      Matriks GeneratorKode Hamming
-   Sirkuit Kode Hamming
-   Aplikasi Kode Hamming


C.    Tujuan Pembahasan

Supaya mahasiswa dan para pembaca makalah ini mengetahui lebih luas Apa itu Input dan Output Pada komputer yang kita pakai di kehidupan sehari-hari serta mengetahui sebarapa penting nya metode hamming code yang kami susun untuk memdetksi sebuah kesalahan pada aplikasi yang kita gunakan. Dengan metode hamming code, kita dapat meminimalisir kesalahan ( error ) yang kita temui pada saat sedang bekerja pada aplikasi yang kita gunkan. Selain itu, hamming code juga dapat membatu dan mempermudah pekerjaan kita untuk memperbaiki kesalah yang kita temui.










BAB II
PEMBAHASAN

A.       Pengertian Modul Input dan Output

Modul adalah satuan standar yang bersama - sama dengan yang lain digunakan secara bersama. Input / Output adalah suatu mekanisme pengiriman data secara bertahap dan terus menerus melalui suatu aliran data dari proses ke peranti (begitu pula sebaliknya).
konektor Input/Output pada komputer, seperti pada keyboard, mouse paralel/serial ataupun USB. Menyediakan koneksi untuk piranti eksternal seperti kamera digital, printer dan scanner. Unit Input/Output (I/O) adalah bagian dari sistem mikroprosesor yang digunakan oleh mikroprosesor itu untuk berhubungan dengan dunia luar.
Modul I/O Adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output.Konektor mekanis berisi fungsi logik untuk komunikasi antara bus dan peripheral. Tidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisilogika dalam melakukan fungsi komunikasi antara peripheral dan bus computer.
Modul I/O adalah suatu komponen dalam sistem komputer yang bertanggung jawab atas pengontrolan sebuah perangkat luar dan juga bertanggung jawab pula dalam pertukaran data antara perangkat luar tersebut dengan memori utama ataupun dengan register – register CPU. Termasuk Antarmuka internal dengan komputer (CPU dan memori utama) dan perangkat eksternalnya untuk menjalankan fungsi – fungsi pengontrolan. Modul I/O memiliki dua buah fungsi utama, yaitu:
1.      Sebagai piranti antar muka ke CPU dan memori melalui bus sistem.
2.      Sebagai piranti antarmuka dengan peralatan peripheral lainnya dengan menggunakan link data tertentu.




B.      Fungsi Modul Input/Output
1.      Control  and Timing
Fungsi kontrol dan pewaktuan (control & timing) merupakan hal yang penting untuk mensinkronkan kerja masing - masing komponen penyusun komputer. Dalam sekali waktu CPU berkomunikasi dengan satu atau lebih perangkat dengan pola tidak menentu dan kecepatan transfer komunikasi data yang beragam, baik dengan perangkat internal seperti register - register, memori utama, memori sekunder, perangkat peripheral. Proses tersebut bisa berjalan apabila ada fungsi kontrol dan pewaktuan  yang  mengatur sistem secara keseluruhan.

2.      Komunikasi CPU
Adapun fungsi komunikasi antara CPU dan modul I/O meliputi proses – proses berikut :
a.     Command Decoding, yaitu modul I/O menerima perintah – perintah dari CPU yang dikirimkan sebaga isinya bagi bus kontrol. Misalnya, sebuah modul I/O untuk disk dapat menerima perintah: Read sector, Scan record ID, Format disk.
b.    Data, pertukaran data antara CPU danmodul I/O melalui bus data.
c.      Status Reporting, yaitu pelaporan kondisi status  modul  I/O  maupun perangkat peripheral, umumnya berupa status kondisi Busy atau Ready. Juga status bermacam-macam kondisi kesalahan (error).
d.      Address  Recognition
Bahwa peralatan atau komponen penyusun computer dapat dihubungi atau dipanggil maka harus memiliki alamat yang unik, begitu pula pada perangkat peripheral, sehingga setiap modul I/O harus mengetahui alamat peripheral yang dikontrolnya.

3.      Data Buffering
Tujuan utama buffering adalah mendapatkan penyesuaian data sehubungan perbedaan laju transfer data dari perangkat peripheral dengan kecepatan pengolahan pada CPU. Umumnya laju transfer data dari perangkat peripheral lebih lambat dari kecepatan CPU maupun media penyimpan.


4.      Deteksi Error
Apabila pada perangkat peripheral terdapat masalah sehingga proses tidak dapat dijalankan, maka modul I/O akan melaporkan kesalahan tersebut. Misal informasi kesalahan pada peripheral printer seperti: kertas tergulung, pintahabis, kertashabis, dan lain - lain. Teknik yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.


C.     Struktur  Modul Input/Output

Terdapat berbagai macam modul I/O seiring perkembangan komputer itu sendiri,contoh yang sederhana dan fleksibel adalah Intel 8255A yang sering disebut PPI(Programmable Peripheral Interface).Bagaimanapun kompleksitas suatu modul I/O,terdapat kemiripan struktur, seperti terlihat pada gambar

Antarmuka modul I/O ke CPU melalui bus sistem komputer terdapat tiga saluran, yaitu saluran data, saluran alamat dan saluran kontrol. Bagian terpenting adalah blok logika I/O yang berhubungan dengan semua peralatan antarmuka peripheral, terdapat fungsi pengaturan dan switching pada blok ini.
D.    Teknik Input/Output
Terdapat tiga buah teknik operasi I/O, yaitu : I/O terprogram, interrupt-driven I/O,dan DMA (Dirrect Memory Access)

1.      I/O Terprogram

Pada I/O terprogram, data saling dipertukarkan antara CPU dan modulI/O. CPU mengeksekusi program yang memberikan operasi I/O kepada CPUsecara langsung seperti pemindahan data, pengiriman perintah baca atautulis dan monitoring perangkat. I/O terprogram mempunyai kelemahan sebagai berikut :
a.       CPU akan menunggu sampai operasi I/O selesai dilakukan modul I/Osehingga akan membuang waktu, CPU lebih cepat proses operasinya. Dalam teknik ini, modul I/O tidak dapat melakukan interupsi kepada CPU terhadap proses- proses yang diinteruksikan padanya.
b.      Seluruh proses merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan Untuk melaksanakan perintah-perintah I/O, CPU akan mengeluarkan sebuah alamat bagi modul I/O dan perangkat periperhalnya sehingga terspesifikasi secara khusus dan sebuah perintah I/O yang akandilakukan.Terdapat empat klasifikasi perintah input/output, yaitu:
1.      Perintah Control yaitu perintah yang digunakan untuk mengaktivasiperangkat periperhal dan memberitahukan tugas yang diperintahkankepadanya.
2.      Perintah Test, yaitu perintah yang digunakan CPU untuk menguji berbagaikondisi status modul I/O dan periperhalnya. CPU perlu mngetahuiperangkat periperhalnya dalam keadaan aktif dan siap digunakan, jugauntuk megetahui operasi-operasi I/O yang dijalankan serta mendeteksi kesalahannya.
3.      Perintah Read, yaitu perintah pada modul I/O untuk mengambil suatu paketdata kemudian menaruhnya di dalam buffer internal. Proses selanjutnyapaket data dikirim melalui bus data setelah terjadi sinkronisasi data maupun kecepatan transfernya.
4.      Perintah Write, Perintah ini kebalikan dari read. CPU memerintahkanmodul I/O untuk mengambil data dari bus data untuk diberikan padaperangkat periperhal tujuan data tersebut

2.      Interrupt - Driven I/O

Teknik interupt driven I/O memungkinkan proses memungkinkan proses tidakmembuang-buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/Opada modul I/O, bersamaan perintah I/O dijalankan oleh modul I/O, makaCPU melakukan eksekusi perintah-perintah lainnya. Apabila modul I/Otelas selesai menjalankan instruksi yang diberikan padanya, maka modulI/O tersebut kemudian akan memberikan interupsi pada CPU bahwa tugasnyatelah selesai.Dalam teknik ini kendali perintah masih menjadi tanggungjawab CPU, baik pengambilan perintah dari memori maupun pelaksanaan isiperintah tersebut. Terdapat selangkah kemajuan dari teknik sebelumnya,yaitu CPU melakukan multitasking beberapa perintah sekaligus sehinggatidak ada waktu tunggu bagi CPU. Cara kerja teknik interupsi di sisimodul I/O adalah modul I/O menerima perintah, misalnya read. Kemudianmodul I/O melaksanakan perintah pembacaan dari periperhal dan meletakkanpaket data ke register data modul I/O, selanjutnya modul mengeluarkansinyal interupsi ke CPU melalui saluran kontrol. Kemudian mosul menunggudatanya diminta CPU. Saat permintaan terjadi, modul meletakkan data padabus data dan modul siap menerima perintah selanjutnya.

3.      Direct Memory Access (DMA)

Teknik yang dijelaskan sebelumnya yaitu I/O terprogram danInterrupt-Driven I/O memiliki kelemahan, yaitu proses yang terjadi padamodul I/O masih melibatkan CPU secara langsung. Hal ini berimplikasi pada :
a.       Kelajuan transfer I/O yang tergantung pada kecepatan operasi CPU.
b.      Kerja CPU terganggu karena adanya interupsi secara langsung.
Bertolakdari kelemahan di atas, apalagi untuk menangani transfer data bervolumebesar dikembangkan teknik yang lebih baik, dikenal dengan Direct MemoryAccess (DMA). Prinsip kerja DMA adalah CPU akan mendelegasikan kerja I/Okepada DMA, CPU hanya akan terlibat pada awal proses untuk memberikaninstruksi lengkap pada DMA dan akhir proses saja. Dengan demikian CPUdapat menjalankan proses lainnya tanpa banyak terganggu denganinterupsi.


E.     Kode Hamming

1. Pengertian Kode Hamming
Kode hamming diperkenalkan oleh Ricard Hamming pada tahun 1950 sabagai kode tunggal pengoreksi kesalahan. Kode Hamming adalah seperangkat koreksi kesalahan kode yang dapat digunakan untuk mendeteksi dan memperbaiki kesalahan bit yang dapat terjadi ketika data komputer dipindahkan atau disimpan.
Metode hamming code merupakan salah satu metode pendeteksi error dan pengoreksi error ( error detection and error correction ) yang paling sederhana. Metode ini menggunakan operasi pendeteksian error maupun pengkoreksian error. Input dan output dari metode ini merupakan bilangan binner. Hamming code meruapakan salah satu jenis linier error correcting code yang sederhana dan banyak digunakan pada peralatan elektronik.
Metode hamming code bekerja dengan menyisipkan beberapa buah check bit ke data. Jumlah check bit yang di sisipkan tergantung pada panjang data. Hamming code juga memiliki rumus tersendiri untuk mendeteksi kesalahan ( error ).
Seperti koreksi kesalahan kode, kode Hamming memanfaatkan konsep paritas dan bit paritas, yang merupakan bit yang ditambahkan ke data sehingga validitas data dapat diperiksa ketika dibaca atau setelah telah diterima di transmisi data. Menggunakan lebih dari satu bit paritas, kode koreksi kesalahan tidak bisa hanya mengidentifikasi kesalahan bit tunggal dalam unit data, tetapi juga lokasi di data unit.


2.      Implementasi Hamming Code
Contoh proses hamming code dengan mengunakan kata “ halo ” ;
-          Penyisipan check bit
Hitung panjang data masukan : HALO . Halo = 4 karakter. 1 karakter = 1 byte = 8 bit. Halo : 32 bit = 0100 | 1000 | 0100 | 0001 | 0100 | 1100 | 0100 | 1111 . 32 bit = 2 pangkat 5 bit. Maka check bit = 5 + 1 = 6 bit.
Sehingga panjang bit yang akan di kirim : 32 + Seluruh proses pada fase perancangan akan di transformasikan pada fase pemrograman ke dalam produk perangkat lunak. Pada fase ini, perangkat lunak di bangun dengan menggunakan bahasa pemrograman. Berikut adalah kebutuhan sumber daya yang di perlukan untuk menjalankan perngkat lunak dan tampilan ketika perangkat lunak tersebut di jalankan .
6 bit = 38 bit. Hasilnya: Panjang bit yang di terima = 38, original bit = 32, check bit = 6. Check bit yang di dapat = 010110 dan check bit yang di ekstrak 010110. Kesimpulannya, bit yang kita dapat sama, itu membuktikan bahwa kata “ halo “ yang kita kirimkan tidak terdapat keslahan. Jika bit yang terdeteksi tidak sama dengan bit original nya, maka bit tersebut mengalamin sebuah kesalahan. Contoh nya saja. Original = 010110 dan setelah di check hasil nya berbeda menjadi 011110
3.      Pengertian Bit Parity
Bit Parity atau disebut juga bit pemeriksa adalah salah satu metode yang digunakan pada modul I/O dalam mendeteksi kesalahan. Bit paritas bekerja untuk medeteksi kesalahan pada level bit. Bit partisi yaitu bit tambahan yang diberikan pada akhir sebuah byte atau baris terakhir untuk digunakan dalam proses pengecekan kebenaran data pada saat penyimpanan atau proses transmisi.
Terdapat 2 macam cara penambahan Bit Pariti yaitu :
1.      Pariti Ganjil (Odd Parity)
Bit Paritas di set menjadi 1 apabila jumlah angka 1 dalam kesatuan bit tersebut (tidak termasuk bit paritas) adalah genap, sehingga menjadikan jumlah bit dalam kesatuan tersebut (termasuk bit paritas) menjadi ganjil.
2.      Pariti Genap (Even Parity)
Bit paritas di set menjadi 1 apabila jumlah angka 1 dalam kesatuan tersebut (tifak termasuk bit paritas) adalah ganjil, sehingga menjadikan jumlah bit dalam kesatuan tersebut (termasuk bit paritas) menjadi genap.

Dan perlu diingat sifat gerbang XOR berikut ini:
          0 + 0 = 0
0 + 1 = 1                  Ganjil
1 + 0 = 1                  Ganjil
1 + 1 = 0                  Genap
Sebagai contoh, kode BCD 8421 yang dimodifikasi dengan menambahkan parity bit.


Tabel kode BCD dengan Bit Parity [5]
Desimal
Kode BCD
Kode BCD Parity Ganjil
Kode BCD Dengan Parity Genap
B8
B4
B2
B1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
1
2
0
0
1
0
0
0
1
0
0
0
0
1
0
1
3
0
0
1
1
0
0
1
1
1
0
0
1
1
0
4
0
1
0
0
0
1
0
0
0
0
1
0
0
1
5
0
1
0
1
0
1
0
1
1
0
1
0
1
0
6
0
1
1
0
0
1
1
0
1
0
1
1
0
0
7
0
1
1
1
0
1
1
1
0
0
1
1
1
1
8
1
0
0
0
1
0
0
0
0
1
0
0
0
1
9
1
0
0
1
1
0
0
1
1
1
0
0
1
0


3. Cara Kerja
4. Cara Kerja Kode Hamming

     Tabel Kode Hamming

Bagaimana bentuk data yang ditransmisikan dengan kode Hamming, jika diketahui bit data = 1010 ?

Jawab:
a1 = a3 + a5 + a7 -> a1 = 1 + 0 + 0 = 1
a2 = a3 + a6 + a7 -> a2 = 1 + 1 + 0 = 0
a4 = a5 + a6 + a7 -> a3 = 0 + 1 + 0 = 1
Sehingga bentuk data yang ditransmisikan menjadi: 1011010
Contoh penggunaan kode hamming lainnya:
Position 1 checks bits 1,3,5,7,9,11:
?
_ 1 _ 0 0 1_ 1 0 1 0. Even parity di set position 1 ke 0: 0 _ 1 _ 0 0 1_ 1 0 1 0
Position 2 checks bits 2,3,6,7,10,11:
0 ? 1_ 0 0 1 _ 1 0 1 0. Odd parity di set position 2 ke 1: 0 1 1 _ 0 0 1 _ 1 0 1 0
Position 4 checks bits 4,5,6,7,12:
0 1 1 ? 0 0 1 _ 1 0 1 0. Odd parity di set position 4 ke 1: 0 1 1 1 0 0 1_ 1 0 1 0
Position 8 checks bits 8,9,10,11,12:
0 1 1 1 0 0 1 ? 1 0 1 0. Even parity di set position 8 ke 0: 0 1 1 1 0 0 1 0 1 0 1 0

Untuk informasi n-bit, cara pengecekan adalah :
1.        Tanda semua posisi bit yang merupakan pangkat dua sebagai bit parity (posisi 1, 2, 4, 8, 16, 32, 64, ...)
2.        Posisi yang lain digunakan sebagai bit data yang akan dikodekan (posisi 3, 5, 6, 7, 9, 10, 11, 12, 13, ...)
3.        Masing-masing bit pengecek menghitung bit setiapposisi dengan cara menge-cek dan melewati, sebagaiberikut:
Posisi 1 : cek 1 bit, lewat 1 bit, cek 1 bit, lewat 1 bit dsb(1,3,5,7,9,11,13,15…)
Posisi 2 : cek 2 bit, lewat 2 bit, cek 2 bit, lewat 2 bit dsb(2,3,6,7,10,11,14,15,…)
Posisi 4 : cek 4 bit, lewat 4 bit, cek 4 bit, lewat 4 bit dsb(4,5,6,7,12,13,14,15,20,21,22,23, …)
Posisi 8 :cek 8 bit, lewat 8 bit, cek 8 bit, lewat 8 bit dsb(8-15,24-31,40-47,...)
Posisi 32 : cek 32 bit, lewat 32 bit, cek 32 bit, lewat 32bit, dsb(32-63,96-127,160-191,...)





5. Matriks Generator Kode Hamming

·         Kode ini dapat dibentuk dengan sebuah algoritma yang sederhana matriks parity check. Contoh kode (7, 4), dibentuk dengan cara berikut:
·         Biner 1 sampai 7.
·         Dalam matriks parity check berikut, urutan kolom dari kirike kanan dibentuk dengan urutan: 7, 6, 5, 3, 1, 2 dan 4,dengan pembacaan bit dari bawah ke atas.Dalam check bit paritas, bernilai bit parity = 1 jika total bit ™” diposisi yang dicek adalah ganjil (Odd) dan berinilai 0 jika total bit ™” adalah genap (Even).

Suatu Hamming codebisa mempunyai “single-error correcting code” atau’ double error detecting”, bila suatu Hamming code berupa single error, maka bila ada single error yang muncul selama deteksi transmissi sinyal, maka nilai resultante syndrome adalah “bukan nol (non-zero) dan terdiri dari bilangan bulat (odd number) dari 1, bila double error yang terjadi,nilai syndrome juga merupakan nonzerotetapi biasanya angka ganjil (even number) dari 1. Bila Hamming code digunakan untuk deteksi kesalahan pada kanal BSC maka besarnya Probability :Pu(E) dapat dihitung dari rumus kombinasi dari rumus Probability dari kesalahan yang tidak dapat dideteksi, biasa disebut dari Probability dari Mac Williamsebesar:
Pu (E) = (1-p)
Dimana A dihitung dengan deret polinom.

6. Sirkuit Kode Hamming
Untuk dapat membayangkan bentuk implementasi dari bentuk hardware rangkaian kode Hamming dapat diperjelas dengan contoh berikut. Bila dianggap suatu linier kode dari bentuk Hamming(7,3) mempunyai matrik parity checksebesar:

H=

kode tersebut mempunyai : 23= 8 buah co-setsehingga terdapat delapan buah error patern yang mungkin untuk dikoreksi termasuk semua vektor nolnya, dan kode ini mempunyai jarak: 3 yang mampu mengkoreksi kesalahan vector error-nya berbobot: 1 dan nol.

7. Aplikasi Kode Hamming
Sinyal-sinyal dari sensor telemetri biasanya mempunyai frekwensi yang rendah tersebut kemudian di multiplexing menjadi seri dari tadinya semula berbentuk paralel, biasanya sensor telemetri satelit yang merupakan pengotrolan dari kesehatan satelit tidaklah yang tunggal (satu) tetapi ada beberapa. Pada satelit mikro TUBSAT digunakan sebanyak :12 kanal telemtri satelit secara paralel, kemudian setelah sinyal analog dari sensor dimultiplexing kemudian dijadikan digital lalu dirubah kedalam bentuk kode Hamming digital sebelum dimodulasi dengan frekwensi pembawa. Di-pesaygwat penerima sinyal, sebaliknya kode ini di-rekontruksikan kembali. Bila dalam penerimaan terjadi kesalahan, kesalahan data ini dikoreksi sehingga dapat berbentuk aslinya kembali. Alat koreksi tersebut dinamakan ACK(Automatic Check Control) yang dapat mengoreksi kesalahan tersebut, koreksi kesalahan tersebut memerlukan waktu beberapa lama.







BAB III
PENUTUP
A.    Kesimpulan
1.     Modul I/O Adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output.
2.      Fungsi Modul Input/Output ialah:
a.       Control  andTiming
b.      Komunikasi CPU
c.       Data Buffering
d.      Deteksi Error
3.      Struktur  Modul Input/Output
Terdapat berbagai macam modul I/O seiring perkembangan komputer itu sendiri, contoh yang sederhana dan fleksibel adalah  intel 8255A yang sering disebut PPI (Programmable Periperhal Interface).
4.     Teknik Input/Output Terdapat tiga buah teknik operasi I/O, yaitu : I/O terprogram, interrupt-driven I/O,dan DMA (Dirrect Memory Access).

Kode Hamming merupakan jalur atau susunan rumus untuk mendeteksi sebuah kesalahan dalam system operasi. dengan hamming code pekerjaan kita dalam meminimalisir sebuah kesalahan jadi sangan mudah. Hamming code merupakan suatu cara untuk memperbaiki kesalahan – kesalahan dalam system operasi yang kita gunakan dengan ketentuan rumus yang sudah di tetapkan pada metode hamming.
B.     Saran
Demikianlah yang dapat kami sampaikan mengenai materi menyadari pentingnya agama dalam keidupan yang menjadi bahasan dalam makalah ini, tentunya banyak kekurangan dan kelemahan kerena terbatasnya pengetahuan kurangnya rujukan atau referensi yang kami peroleh hubungannya dengan makalah ini. Penulis banyak berharap kepada para pembaca yang budiman memberikan kritik saran yang membangun kepada kami demi sempurnanya makalah ini. Semoga makalah ini dapat bermanfaat bagi penulis para pembaca, khusus pada penulis. Aamin…

Daftar Pustaka
William Staliings. 2005. Organisasi & Arsitektur Komputer : RancanganKierja. Jilid 1. Jakarta: PT Indeks kelompok Gramedia  
William Staliings.1996. OrganisasidanSistemKomputer.EdisibahasaIndonesia.Jilid 1.
Jakarta: PT Prehalindo
Andrew S. Tanenbaum.2001. OrganisaiKomputerTerstuktur. Jilid 1. Jakarta. Salemba
Teknika
Port Komputer - http://www.anneahira.com/port-komputer.htmSejarah Port Komputer - http://ripblaze.blogspot.com/search?q=sejarah+port
http://fundester.blogspot.co.id/2015/02/makalah-hamming-code.html

Komentar Avatar