Rabu, 28 September 2011

URUTAN KERJA DARI MIKRO PROSESOR

A. PENDAHULUAN
Suatu hal yang tak dapat dipungkiri adalah bahwa wajah dunia sangat cepat berubah sejak ditemukannnya prosesor (sebutan umum untuk mikroprosesor) yang menjadi otak dari sistem komputer. Dengan kecerdasan dan kecepatan yang dimiliki oleh sebuah prosesor banyak hal yang dapat dikerjakannya seperti pengendalian alat-alat listrik dan elektronik rumah tangga sampai pengindaraan dan pengendalian jarak jauh yang tidak lagi dibatasi jarak, waktu dan ruang. Teknologi prosesor ternyata sangat mudah dan murah untuk diterapkan pada sistem alat-alat bantu manusia. Televisi, Video CD, Mesin cuci, mobil, apalagi pesawat udara, pesawat ruang angkasa, satelit dan seterusnya telah menerapkan teknologi prosesor untuk meningkatkan unjuk kerjanya.
Nah untuk megetahui sehebat apakah sebuah prosesor itu sehingga hampir semua sektor kehidupan manuasia dapat dimasukinya. Dan seberapa rumitkah sistem prosesor itu sehingga banyak orang enggan untuk mempelajarinya namun tetap mengaguminya dan memanfaatkannya. Sebenarnya sistem prosesor tidaklah begitu rumit dan semua orang yang telah punya latar belakang elektronika dan digital dengan cepat dapat mengerti tentang sistem dan cara kerjanya. Dalam tulisan yang ringkas ini ini saya akan menjelaskan bagaimana cara kerja proseseor mulai dari hal-hal sangat gamblang dan mudah dipahami.

B. POSISI PROSESOR DALAM SISTEM KOMPUTER
Dalam sistem komputer prosesor bukanlah suatu alat yang dapat bekerja sendiri, tetapi harus dibantu oleh alat-alat lain seperti : Alat Input-Output (I/O), Memory, Clock, Alat Penyimpan Data (Storage) dan Alat-alat Kendali Luar (peripheral). Seperti yang terlihat pada gambar 1 sebuah prosesor yang merupakan otak dari sistem komputer harus digerakkan oleh sebuah sumber denyut yang disebut Clock. Semua aliran data selama proses terjadi merupakan gerakan yang didukung oleh Clock. Banyaknya dnyut Clock yang tejadi setiap detik menentukan kecepatan sebuah prosesor bekerja. Kalau saat ini ada proseso Pentium IV 2,8 GHz. itu berarti denyut Clock-nya adalah 2 800 000 000 getar/detik dan artinya prosesor itu mampu memproses data seabanyak angka itu dalam satu detik.

Untuk memasukan data yang akan diproses prosesor memerlukan alat input, yang berguna untuk menterjemahkan perintah yang dimasukkan manusia ke dalam perintah yang dimengerti oleh prosesor itu. Sedang untuk menampilkan hasil dari data yang sudah diproses prosesor memerlukan alat output, yang berguna untuk menerjemahkan data hasil proses ke dalam bahasa yang dikenal kembali oleh manusia. Pada awalnya kedua alat ini merupakan satu paket yang tidak terpisahkan maka disebut dengan alat I/O (input output).



Gambar 1. Posisi Prosesor Dalam Sistem Komputer

Prosesor bekerja hanya satu kali jadi untuk satu proses data, kalau ada pekerjaan berikutnya maka hasil proses yang pertama akan hilang . Untuk menjaga data dapat diproses prosesor dan hasilnya dapat diingat maka di perlukan bantuan memory, yang mampu menyimpan data baik sebelum diproses ataupun setelah diproses. Selain itu memory juga berguna untuk menyimpan program-program yang akan dipergunakan untuk memerintah prosesor itu sendiri.

Agar data yang telah dihasilkan dari proses pada prosesor dapat dipakai pada waktu ldan tempat lain maka dipelukan media penyimpan permanen yang disebut Storage. Banyak jenis penyimpan data komputer ini misalnya : Disket, Harddisk, CD, Flash Disk, tape back up dan lain-lain.

C. Arsitektur Prosesor
Untuk mengetahui prinsip kerja prosesor maka kita dapat melihat gambar arsitektur nya . Secara garis besarnya arsitektur prosesor dibagi menjadi dua jenis yaitu :
1. Prosesor Sistem Bus Tunggal
Prosesor sistem bus tunggal maksudnya adalah saluran perpindahan data antar bagian di dalam prosesor melalui satu sistem bus saja, seperti terlihat pada gambar 2. Sistem bus itu tediri dari beberapa kawat penghubung yang berguna untuk menyalurkan data antar bagian-bagian di dalan prosesor itu. Oleh karena bus dapat diisi data hanya satu macam data setiap saat, maka data yang akan di transfer dari dan ke bagian hanya dapat dilakukan secara bergantian dengan urutan tertentu. Dengan sifat bus yang demikian itu maka prosesor dengan sistem bus tunggal akan bekerja lebih lambat dan waktu prosesor banyak terbuang hanya kerena menunggu aliran data selesai. Namun demikian untuk mempelajari prinsip kerjanya maka prosesor sistem bus tunggal lebih mudah dimengerti.

2. Prinsip Kerja Prosesor Sistem Bus Tunggal Secara Umum
Bagian yang paling utama di dalam sebuah prosesor adalah ALU (Aritmatic and Logic Unit), yaitu sebuah blok rangkaian digital yang mampu melakukan operasi aritmatika dan operasi logika. Operasi aritmatika itu antara lain : Tambah, Kurang, Kali, Bagi, sedangkan operasi logika antara lain : OR,AND,NOT,EXOR,EXNOR dan lain-lain. Agar ALU dapat melakukan proses aritmatika dan logika maka input data ALU harus dua buah yang masing-masing dinamakan input X (X0, X1,..... X n-1) dan input Y (Y0, Y1,...... Y n-1 ). Agar proses pada ALU dapat berlangsung maka pada salah satu inputnya harus dibantu oleh sebuah register Y yang berguna untuk menahan salah satu data yang akan di proses di input Y. Sedangkan data kedua dapat langsung dimasukkan ke input X.

Ketika sinyal kontrol diberikan ke ALU maka data hasil proses ALU akan terjadi di outputnya. Agar data ini tidak terganggu oleh yang lain maka data hasil proses itu langsung dipindahkan ke register Z yang terletak di Output ALU. Data yang sudah berada di register Z itu akan dapat dipindahkan ke register lain untuk di proses selanjutnya.

Register Y adalah sebuah register yang ditempatkan di salah satu input ALU (arithmatic and Logic Unit) yang berguna untuk menahan salah satu data yang akan di proses ALU tersebut. Misalnya ALU diperintahkan untuk menjumlahkan dua buah bilangan 1001 dengan 1100. Maka data operand pertama 1001 harus dimasukkan ke register Y untuk ditahan sementara di input Y ALU. Setelah itu data operand kedua 1100 langsung dimasukkan ke input X ALU bersama dengan sinyal control ADD. Hasil dari proses penjumlahan tersebut akan dimasukkan ke register Z dan Carry out ke Co ALU. Jadi register Z berguna untuk menahan data hasil proses ALU.
Selain register Y dan register Z ternyata ALU memerlukan register-register lain untuk membantu tugasnya agar dapat melakukan proses yang benar. Diperlukan register serbaguna untuk memasukkan data operan pertama ke register Y serta data operan kedua pada input X dari ALU. Sebelum diproses oleh ALU maka kedua data harus ada secara bersama-sama pada kedua input ALU tersebut.




gambar 2. Arsitektur Prosesor Sistem Bus Tunggal

Keterangan Gambar :
CU = Control Unit (Kumpulan Perintah)
IR = Intruction Register ( Register Penunjuk Perintah)
MAR = Memory Address Register ( Register Penunjuk Alamat Memory)
MDR = Memory Data Register ( Register Pencatat Data Memory )
PC = Program Counter ( Register penunjuk Langkah Program yang akan
diproses).
R0 = Register Serbaguna nomor pertama
R1 = Register Serbaguna kedua
R n-1 = Register serbaguna terakhir.
Y = Register Pemegang operan pertama sebelum diproses ALU
Z = Register Pemegang hasil yang sudah diproses ALU
Bus Internal = Bus data yang terdapat di dalam prosesor
Bus Alamat = Bus yang menghubungkan PIN alamat prosesor dengan PIN Alamat
memory, yang berguna untuk menunjuk alamat memory.
Bus Data = Bus yang menghubungkan PIN data prosesor dengan PIN data Memory, yang
berguna untuk baca/tulis data dari prosesor ke Memory atau sebaliknya.

Misalnya ketika prosesor diinginkan untuk melakukan operasi penjumlahan (ADD) dari dua buah bilangan 1001 dengan 1100 maka langkah-langkah yang dilakukan prosesor adalah sebagai berikut :
1. Isi register serbaguna R0 dengan suatu angka yang sama dengan alamat data operan pertama dalam memory. Misalnya operan pertama (angka 1001) terletak pada alamat 500 maka isilah R0 dengan angka 500.
2. Pindahkan isi register serbaguna R0 ke MAR. Maka sekarang isi MAR adalah angka 500, itu berarti sekarang prosesor menunjuk alamat memory 500.
3. Bila alamat memory sudah ditunjuk oleh MAR maka data yang ada di alamat itu akan langsung pindah ke MDR.
4. Proses pemindahan data dari memory ke MDR memakan waktu, sehingga prosesor harus menunggu sinyal MFC (Memory Function Complete) yang menandakan semua data sudah pindah ke MDR. Dengan demikian sekarang MDR berisi data 1001 yang berasal dari memory alamat 500 tadi.
5. Pindahkan data yang sudah ada di MDR ke register Y untuk ditahan pada input Y dari ALU. Dan data yang berada dalam regsiter Y itu berfungsi sebagai operan pertama.
6. Ambil data operan kedua dengan cara menunjuk alamat lokasi memory dimana data itu terletak. Misalnya data operan kedua yaitu angka 1100 terletak pada lokasi 501, maka langkah-langkahnya sama dengan langkah 1-4 ditambah dengan perintah operasi (dalam contoh ini perintah itu adalah ADD).
7. Isi regiater serbaguna R0 kembali dengan bilangan 501, karena alamat yang akan di tunjuk adalah 501.
8. Pindahkan isi register serbaguna R0 ke MAR. Menurut contoh ini maka isi MAR sekarang adalah angka 501, sehingga lokasi memory 501 sekarang sedang ditunjuk.
9. Data yang berada pada lokasi 501 sekarang pindah ke MDR.
10. Setelah sinyal MFC datang maka sekarang MDR berisi data yang berasal dari memory 501. Menurut contoh ini maka MDR sekarang berisi angka 1100.
11. Berikan perintah ADD pada prosesor maka data yang di MDR akan langsung masuk ke input X dari ALU dan langsung dijumlahkan dengan data operan pertama yang sudah berada di input Y tadi.
12. Operasi memakan waktu beberapa saat setelah itu hasilnya akan keluar pada output ALU dan langsung dipegang oleh register Z.
13. Hasil operasi ALU yang sudah berada di dalam register Z akan disimpan ke dalam lokasi memory tertentu untuk diamankan ( sebab jika tetap berada di dalam register Z data itu akan hilang jika ALU melakukan tugas berikutnya).
14. Proses penyimpanan data ke dalam memory dilakukan dengan cara menununjuk lokasi memory tempat data akan disimpan, lalu data yang akan disimpan dimasukkan ke MDR untuk diampaikan ke lokasi itu.
15. Misalnya data itu akan disimpan pada lokasi 502 maka pertama yang dilakukan adalah mengisi register serbaguna R0 dengan angka 502.
16. Pindahkan isi register serbaguna R0 ke MAR, sehingga sekarang MAR akan menunjuk lokasi memory 502.
17. Pindahkan isi reister Z ke MDR.
18. Berikan perintah tulis memory (Write) pada prosesor.
19. Tunggu sinyal MFC sebagai tanda bahwa seluruh data yang ada pada MDR sudah selesai disimpan pada lokasi memory yang ditunjuk tadi.
20. Selesai satu siklus pekerjaan prosesor dalam operasi penjumlahan (ADD). Walaupun langkah-langkahnya cukup panjang untuk dipaparkan tetapi sesungguhnya waktu yang diperlukan oleh prosesor untuk pekerjaan itu adalah sangat cepat yaitu dalam orde nano detik.

3. Kesimpulan
Sejak ditemukannya mikroprosesor pertama kali oleh Marcian E. Hoff, Jr seorang insinyur pada perusahaan Intel Amerika Serikat pada tahun 1971 maka hampir seluruh sudut kehidupan manusia disentuhnya. Hal itu disebabkan karena cara kerja prosesor relatif tidaklah rumit jika diukur dari kemampuan kerja yang dipunyainya. Mulai dari kontrol pada alat-alat rumah tangga seperti mesin cuci, kulkas, VCD, televisi, kontrol peralatan mobil, pesawat telepon, handphone, pesawat terbang sampai pesawat ruang angkasa. Melihat kemampuan kerja dan fleksibelitasnya program yang dapat dijalankan sebuah prosesor maka tidak ada hal yang tak mungkin yang dapat menggunakan teknologi prosesor. Kita dapat melihat lampu reklame yang beranimasi bermacam-macam gaya, dunia entertaimen yang serba otomatis dan lain-lain asesoris yang sangat mempesona tampilannya adalah berkat bantuan teknologi prosesor ini. Suatu hal yang sangat mungkin untuk terwujud pada suatu saat nanti mobil dapat berjalan tanpa sopir layaknya pesawat terbang fly by wire.











DAFTAR PUSTAKA
Haskell, E. Richard, 1993, Assembly Language Tutor For The IBM PC and
Compatibles, Rhochester, Michigan, Oakland University.
Mano, M. Morris, 1991, Computer System and Architecture, Los Angeles, Calofornia
State University.
Hamacher, V.Carl, 1990, Computer Organization, Toronto, Univeristy Of Toronto.
Miller, Alan R, 1998, DOS Assembly Language Programming, Soccoro, New
Mexico.
Rizkiawan, Rizal, 1997, Tutorial Perancangan Hardware II, Jakarta, PT Elex Media
Komputindo.
Hariyanto, Bambang, 2000, Sistem Operasi, Bandung, Informatika.
Pitowarno, Endra, 2005, Mikroprosesor & Interfacing, Yogyakarta, Andi

PERBEDAAN BUS DAT,BUS ALAMAT & BUS CONTROL

BUS
Ada beberapa kemungkinan interkoneksi sistem
Yang biasa dipakai: Single Bus dan multiple BUS
PC: Control/Address/Data bus
DEC-PDP: Unibus
WHAT IS A BUS?
Jalur komunikasi yang menghubungkan beberapa device
Biasanya menggunakan cara broadcast
Seringkali dikelompokkan
Satu bus berisi sejumlah kanal (jalur)
Contoh bus data 32-bit berisi 32 jalurTebalJalur sumber tegangan biasanya tidak diperlihatkan

DATA BUS
Membawa data
Tidak dibedakan antara “data” dan “instruksi”
Lebar jalur menentukan performance
8, 16, 32, 64 bit

ADDRESS BUS
Menentukan asal atau tujuan dari data
Misalkan CPU perlu membaca instruksi (data) dari memori pada lokasi tertentu
Lebar jalur menentukan kapasitas memori maksimum dari sistem
Contoh 8080 memiliki 16 bit address bus maka ruang memori maksimum adalah 64k

CONTROL BUS
Informasi kendali dan timing
Sinyal read/write memory (MRD/MWR)
Interrupt request (IRQ)
Clock signals (CK)

SKEMA INTERKONEKSI BUS

Selasa, 27 September 2011

Mikroprosesor dan Mikrokontroler, Apa Bedanya?

Mikroprosesor dan Mikrokontroler, Apa Bedanya?

Sekarang mari kita sedikit bahas topik pertama dari buku pegangan kuliah ini (The 8051, Ayala) yaitu mengenai perbedaan microprocessor dan microcontroller. Dimana keduanya berasal dari ide dasar yang sama, diproduksi oleh perusahaan manufaktur yang sama, dijual kepada system designer dan programmer yang sama, dan istilah yang sama-sama ditujukan pada IC. Jadi apa yang membedakan keduanya sehingga kita dapat mengatakan dengan yakin bahwa yg ini termasuk mikroprosesor sedangkan yg ini termasuk mikrokontroler?

Secara terjemahan kasar, microprocessor=pengolah, mikrocontroller=pengendali. Dari sini mungkin kita sudah bisa memperkirakan perbedaannya.

Singkatnya:

1. Mikroprosesor bersifat general purpose (fungsi umum, fleksibel). Sehingga berisikan sepaket chip yang hanya berfungsi sebagai pengolah data (terdiri dari ALU, PC, SP, register, clock, interrupt, data/address bus) dari memory. Dan dikarenakan tidak memiliki fitur terintegrasi sebagaimana mikrokontroler maka untuk menjadikannya dapat beroperasi kita perlu menambahkan lagi RAM, I/O, dan berbagai device/periferal lain (tergantung tujuan penggunaannya). Implementasinya misal seperti yang selama ini kita kenal dengan processor Intel dan AMD untuk PC adalah termasuk jenis ini.

Diagram blok mikroprosesor

Diagram blok sebuah mikroprosesor

2. Mikrokontroler bersifat specific purpose (fungsi khusus, terbatas). Sehingga berisikan sepaket chip lengkap yang terdiri dari fitur-fitur pengolah data yang juga terdapat dalam mikroprosesor, ditambah RAM, ROM, I/O, dan fitur terintegrasi lain di dalamnya. Implementasinya dapat ditemui pada berbagai macam perangkat rumah tangga, telekomunikasi, otomotif, mesin industri, elektronik, dan perangkat-perangkat lain yang memiliki ‘otak’ (embedded system) di dalamnya.

Diagram blok mikrokontroler

Diagram blok sebuah mikrokontroler

Sekian.

Maaf kalau ada salah, namanya juga baru belajar.. untuk referensi lebih lengkapnya silakan baca sendiri bukunya.. ;p

- Ayala, Kenneth J. “The 8051 Microcontroller: Architecture, Programming, and Applications”. 1991. St. Paul: West Publishing Company
- http://en.wikipedia.org/wiki/Microcontroller
- http://en.wikipedia.org/wiki/Microprocessor

cara mengginstal app server d komputer anda

1. Klik ganda appserv-win32-x.x.x.exe untuk menginstall AppServ di komputer Anda.


Gambar 1 AppServ Welcome Screen

2. License Agreement : AppServ distribution under GNU/GPL License. Anda harus membacanya sebelum menginstall (kalau tidak mengerti langsung klik NEXT saja).
Jika Anda setuju klik Next untuk ke tahapan berikutnya. Kalau tidak klik CANCEL untuk membatalkan.



Gambar 2 GNU/GPL License Agreement screen.

3. Tentukan lokasi install: secara default C:AppServ. Jika Anda ingin merubah
klik tombol Browse untuk merubah, kemudian klik Next untuk ke tahapan berikutnya.


Gambar 3 Choose Install location screen.

4. Pilih Components : AppServ default package components it’s pilih semua saja lebih baik.
Jika beberapa saja. Anda bisa klik di check box.
- Apache HTTP Server is a Web Server.
- MySQL Database is a Database Server.
- PHP Hypertext Preprocessor is a PHP Programming processor.
- phpMyAdmin is a MySQL Database control via WWW.
Jika sudah klik Next untuk ke tahap berikutnya.


Gambar 4 Choose Package Components screen.

5. Konfigurasi Apache : Halaman ini untuk spesifikasi konfigurasi Apache.
Server Name Anda harus menentukan Server Name misalnya www.jadisukses.com.
Email Admin Tentukan Email Admin misalnya owner@jadisukses.com (kalau di localhost sebaiknya diisi root@appservnetwork.com)
HTTP Port Tentukan HTTP port untuk Apache Web Server.





Gambar 5 Apache Web Server configure screen.

6. Konfigurasi MySQL :
Root Password Anda harus mengisi root password untuk MySQL Database.
Default user untuk password adalah root .
Character Sets Spesifikasi untuk data storage bahasa dan collations.
Password lama Jika ada masalah dengan coding PHP codekan dengan sebelumnya MySQL API.
And found error Client does not support authentication protocol requested by server;
consider upgrading MySQL client
You must check this option to avoid error.

Enable InnoDB Jika Anda menggunakan InnoDB harus check option ini.


Gambar 6 MySQL Database configure screen.

7. Complete AppServ setup : Setup ask for start Apache and MySQL immediately.
Click Finish to end this setup and AppServ prompt to use.



Gambar 7 Complete AppServ Setup screen.