Rabu, 09 November 2011

Mikrokontroller ATmega 8535

Mikrokontroller ATmega 8535

Pendahuluan

Semakin pesatnya perkembangan ilmu pengetahuan dan teknologi mengakibatkan manusia dihadapkan pada suatu masalah yang lebih kompleks yang menuntut adanya kreativitas dalam menyelesaikan masalah tersebut. Salah satu penemuan di bidang elektronika adalah telah diciptakannya sebuah alat yang dapat mengontrol sebuah perangkat elektronika dan dapat terhubung langsung dengan sebuah PC sehingga hasilnya dapat dilihat langsung pada PC. Alat tersebut adalah Mikrokontroller ATmega 8535. Adapun beberapa tipe lain dari mikrokontroller tersebut yang juga dapat digunakan dalam penelitian yang lain. Adanya mikrokontroller ATmega 8535 ini menjadi dasar dari pembuatan proyek akhir ini. Kegunaan mikrokontroller ATmega 8535 adalah untuk membaca beberapa data yang diperoleh dari penelitian kemudian ditampilkan kedalam komputer (PC). Pada proyek ini, mikrokontroller ATmega 8535 akan membaca sebuah data yakni berupa besar arus yang mengalir pada suatu rangkaian yang diukur dan kemudian hasil dari pengukuran itu akan ditampilkan kedalam PC.

Mikrokontroller ATmega 8535 ini dibantu oleh sebuah rangkaian pengukur arus dengan dilengkapi sebuah sensor yang kemudian akan dipasang secara seri terhadap rangkaian yang akan diukur agar dapat mengukur arus yang mengalir pada rangkaian tersebut. Arus yang telah diukur tersebut akan dapat terlihat kedalam PC. Adanya prinsip kerja seperti ini nantinya akan dapat mempermudah peneliti untuk melihat perubahan arus yang terjadi pada suatu rangkaian. Cara kerja sistem seperti ini dapat lebih mempermudah dalam suatu penelitian agar semua data yang terukur dapat langsung disimpan kedalam PC. Pada kenyataannya dapat kita lihat pada saat ini masih banyak adanya kelemahan dalam pengukuran arus dengan amperemeter yaitu suatu kelemahannya adalah amperemeter tidak dapat menampilkan sinyal arus yang terukur. Hal ini mendasari dibuatnya proyek ini yang bertujuan agar lebih mempermudah dalam mengukur besar arus yang terjadi pada suatu rangkaian dan juga mempermudah dalam melihat perubahan besar arus yang terjadi.

AVR merupakan seri mikrokontroller CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare, interupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving. Beberapa diantaranya mempunyai ADC dan PWM internal. AVR juga mempunyai In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI. Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega8535. ATmega8535 adalah mikrokontroller CMOS 8-bit daya-rendah berbasis arsitektur RISC yang ditingkatkan. Kebanyakan instruksi dikerjakan pada satu siklus clock, ATmega8535 mempunyai throughput mendekati 1 MIPS per MHz membuat disainer sistem untuk mengoptimasi komsumsi daya versus kecepatan proses.

Referensi:

www.google.com

Yanuar Rohman, Anang Budikarso, Haryadi Amran D.

Politeknik Elektronika Negeri Surabaya, Jurusan Teknik Telekomunikasi Laboratorium Digital Signal Processing Institut Teknologi Sepuluh Nopember.

Minggu, 06 November 2011

ORGANISASI DAN ARSITEKTUR KOMPLEKS KE 2

Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4

A. Arsitektur Set Instruksi

Operasi dari CPU ditentukan oleh instruksi-instruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (mechine instructions) atau instruksi komputer (computer instructions). Kumpulan dari instruksi-instruksi yang berbeda yang dapat dijalankan oleh CPU disebut set Instruksi (Instruction Set).

Jenis Instruksi

1. Data processing: Arithmetic dan Logic Instructions

2. Data storage: Memory instructions

3. Data Movement: I/O instructions

4. Control: Test and branch instructions

Instruksi aritmetika (arithmetic instruction) memiliki kemampuan untuk mengolah data numeric. Sedangkan instruksi logika (logic instruction) beroperasi pada bit-bit word sebagai bit, bukan sebagai bilangan. Operasi-operasi tersebut dilakukan terutama dilakukan untuk data di register CPU. Instruksi-inslruksi memori diperlukan untuk memindah data yang terdapat di memori dan register. Instruksi-instruksi I/O diperlukan untuk memindahkan program dan data kedalam memori dan mengembalikan hasil komputasi kepada pengguna.

Teknik Pengalamatan

Salah satu cara tradisional untuk menggambarkan arsitektur prosessor adalah dengan melihat jumlah alamat yang terkandung dalam setiap instruksinya. Untuk menyimpan data ke dalam memori komputer, tentu memori tersebut diberi identitas (yang disebut dengan alamat/ address) agar ketika data tersebut diperlukan kembali, komputer bisa mendapatkannya sesuai dengan data yang pernah diletakkan di sana. Mode pengalamatan ini meliputi immediate addressing, direct addressing, indirect addressing, pengalamatan bit, register, dan Stack.

A. Direct Addressing

Dalam mode pengalamatan direct addressing, harga yang akan dipakai diambil langsung dalam alamat memori lain. Contohnya: MOV A,30h. Dalam instruksi ini akan dibaca data dari RAM internal dengan alamat 30h dan kemudian disimpan dalam akumulator. Mode pengalamatan ini cukup cepat, meskipun harga yang didapat tidak langsung seperti immediate, namun cukup cepat karena disimpan dalam RAM internal. Demikian pula akan lebih mudah menggunakan mode ini daripada mode immediate karena harga yang didapat bisa dari lokasi memori yang mungkin variabel.

B. Indirect Addressing

Mode pengalamatan indirect addressing sangat berguna karena dapat memberikan fleksibilitas tinggi dalam mengalamati suatu harga. Mode ini pula satu-satunya cara untuk mengakses 128 byte lebih dari RAM internal pada keluarga 8052. Contoh: MOV A,@R0. Dalam instruksi tersebut, 89C51 akan mengambil harga yang berada pada alamat memori yang ditunjukkan oleh isi dari R0 dan kemudian mengisikannya ke akumulator.

C. Pengalamatan Bit

Teknik pengalamatan bit adalah penunjukkan alamat lokasi bit baik dalam RAM internal atau perangkat keras. Untuk melakukan pengalamatan bit digunakan simbol titik (.)

D. Register

Register dalam arsitektur komputer, adalah sejumlah kecil memori komputer yang bekerja dengan kecepatan sangat tinggi yang digunakan untuk melakukan eksekusi terhadap program-program komputer dengan menyediakan akses yang cepat terhadap nilai-nilai yang umum digunakan. Umumnya nilai-nilai yang umum digunakan adalah nilai yang sedang dieksekusi dalam waktu tertentu. Istilah register saat ini dapat merujuk kepada kumpulan register yang dapat diindeks secara langsung untuk melakukan input/output terhadap sebuah instruksi yang didefinisikan oleh set instruksi.

Desain Set Instruksi

Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
1. Kelengkapan set instruksi

2. Ortogonalitas (sifat independensi nstruksi)
3. Kompatibilitas :
- Source code compatibility
- Object code Compatibility

Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut :

1. Operation Repertoire

2. Data Types

3. Register

4.Addressing

B. CPU

Unit pengolahan pusat (CPU) adalah bagian dari sebuah komputer sistem yang melaksanakan instruksi dari program komputer , untuk melakukan aritmatika, logis, dan dasar input / output dari sistem operasi. CPU memainkan peran yang agak analog dengan otak dalam komputer.

Sistem BUS

  1. Penghubung bagi keseluruhan komponen komputer dalam menjalankan tugasnya
  2. Komponen komputer :

1. CPU

2. Memori

3. Perangkat I/O

Pengertian Bus

Bus adalah sebuah subsistem yang mentransfer data atau listrik antar komponen komputer di dalam sebuah komputer atau antar komputer. Tidak seperti hubungan titik-ke-titik, sebuah bus secara logika dapat menghubungkan beberapa alat dalam satu set kabel yang sama. Setiap bus mendefinisikan set konektornya ke alat colok fisik, kartu, atau kabel bersamaan.

Bus komputer awal merupakan bus listrik paralel dengan banyak hubungan, tetapi istilah ini sekarang digunakan untuk pengaturan fisik yang menyediakan fungsi logika yang sama dengan sebuah bus listrik paralel, dan dapat dihubungkan dengan kabel dalam sebuah topologi multidrop atau daisy chain atau dihubungkan oleh hub switch, seperti dalam kasus bus USB. fungsi saluran bus dapat diklasifikasikan menjadi tiga kelompok, yaitu saluran data, saluran alamat, dan saluran kontrol. Selain itu, terdapat pula saluran distribusi daya yang memberikan kebutuhan daya bagi modul yang terhubung.

Saluran Data

Saluran data memberikan lintasan bagi perpindahan data antara dua modul sistem. Saluran ini secara kolektif disebut bus data. Umumnya bus data terdiri dari 8, 16, 32 saluran, jumlah saluran diakitakan denang lebar bus data. Karena pada suatu saat tertentu masing-masing saluran hanya dapat membawa 1 bit, maka jumlah saluran menentukan jumlah bit yang dapat dipindahkan pada suatu saat. Lebar bus data merupakan faktor penting dalam menentukan kinerja sistem secara keseluruhan. Misalnya, bila bus data lebarnya 8 bit, dan setiap instruksi panjangnya 16 bit, maka CPU harus dua kali mengakses modul memori dalam setiap siklus instruksinya.

Saluran Alamat

Saluran alamat digunakan untuk menandakan sumber atau tujuan data pada bus data. Misalnya, bila CPU akan membaca sebuah word data dari memori, maka CPU akan menaruh alamat word yang dimaksud pada saluran alamat. Lebar bus alamat akan menentukan kapasitas memori maksimum sistem. Selain itu, umumnya saluran alamat juga dipakai untuk mengalamati port-port input/outoput. Biasanya, bit-bit berorde lebih tinggi dipakai untuk memilih lokasi memori atau port I/O pada modul.

Saluran Kontrol

Saluran kontrol digunakan untuk mengntrol akses ke saluran alamat dan penggunaan data dan saluran alamat. Karena data dan saluran alamat dipakai bersama oleh seluruh komponen, maka harus ada alat untuk mengontrol penggunaannya. Sinyal-sinyal kontrol melakukan transmisi baik perintah maupun informasi pewaktuan diantara modul-modul sistem. Sinyal-sinyal pewaktuan menunjukkan validitas data dan informasi alamat. Sinyal-sinyal perintah mespesifikasikan operasi-operasi yang akan dibentuk. Umumnya saluran kontrol meliputi : memory write, memory read, I/O write, I/O read, transfer ACK, bus request, bus grant, interrupt request, interrupt ACK, clock, reset.

C. ALU (Arithmetic and Logical Unit)

Alu adalah salah satu bagian dalam dari sebuah mikroprosesor yang berfungsi untuk melakukan operasi hitungan aritmatika dan logika. Contoh operasi aritmatika adalah operasi penjumlahan dan pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. tugas utama dari ALU (Arithmetic And Logic Unit)adalah melakukan semua perhitungan aritmatika atau matematika yang terjadi sesuai dengan instruksi program. ALU melakukan operasi aritmatika yang lainnya. Seperti pengurangan, pengurangan, dan pembagian dilakukan dengan dasar penjumlahan. Sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi aritmatika ini disebut adder. ALU melakukan operasi arithmatika dengan dasar pertambahan, sedang operasi arithmatika yang lainnya, seperti pengurangan, perkalian, dan pembagian dilakukan dengan dasar penjumlahan. sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi arithmatika ini disebut adder. Terdapat dua macam bilangan yang ditangani oleh prosesor, yaitu bilangan fixed point dan bilangan floating point.

Bilangan fixed point adalah bilang yang memiliki nilai digit spesifik pada salah satu titik desimalnya, Hal ini akan membatasi jangkauan nilai yang mungkin untuk angka-angka tersebut, namun, hal ini justru dapat dihitung oleh prosesor.

Sedangkan bilangan floating point, adalah bilangan yang diwujudkan dalam notasi ilmiah, yaitu berupa angka pecahan desimal dikalikan dengan angka 10 pangkat bilangan tertentu. Misalnya: 705,2944 x 109, atau 4,3 x 10-7. Cara penulisan angka seperti ini merupakan cara singkat untuk menuliskan angka yang nilainya sangat besar maupun sangat kecil. Bilangan seperti ini banyak digunakan dalam pemrosesan grafik dan kerja ilmiah. Proses aritmatika bilangan floating point memang lebih rumit dan prosesor membutuhkan waktu yang lebih lama untuk mengerjakannya, karena mungkin akan menggunakan beberapa siklus detak (clock cycle) prosesor.

Oleh karena itu, beberapa jenis komputer menggunakan prosesor sendiri untuk menangani bilangan floating point. Prosesor yang khusus menangani bilangan floating point disebut Floating Point Unit (FPU) atau disebut juga dengan nama math co-processor. FPU dapat bekerja secara paralel dengan prosesor. Dengan demikian proses penghitungan bilangan floating point dapat berjalan lebih cepat. Keberadaan FPU integrated (bersatu dengan prosesor) sudah menjadi kebutuhan standart komputer masa kini, karena banyak sekali aplikasi-aplikasi yang beroperasi menggunakan bilangan floating point.

D. CU ( Control Unit )

( Control Unit – CU ) adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan/kendali/ kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut. Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut.

Tugas dari CU adalah sebagai berikut:

  1. Mengatur dan mengendalikan alat-alat input dan output.
  2. Mengambil instruksi-instruksi dari memori utama.
  3. Mengambil data dari memori utama kalau diperlukan oleh proses.
  4. Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja.
  5. Menyimpan hasil proses ke memori utama.

E. Register

Register prosesor, dalam arsitektur komputer, adalah sejumlah kecil memori komputer yang bekerja dengan kecepatan sangat tinggi yang digunakan untuk melakukan eksekusi terhadap program-program komputer dengan menyediakan akses yang cepat terhadap nilai-nilai yang umum digunakan. Umumnya nilai-nilai yang umum digunakan adalah nilai yang sedang dieksekusi dalam waktu tertentu.

Set Register : Apabila bit ini bernilai 0, maka register data dapat diupdate setiap detiknya, namun apabila bit ini bernilai 1, maka register data tidak dapat diupdate. Bit ini tidak akan berpengaruh terhadap kondisi RESET.

register Kontrol

- Register register untuk komunikasi dengan unit unit diluar CPU

MAR (Memory Address Register) untuk menyatakan alamat lokasi operand dalam memory yang akan dibaca atau ditulisi oleh CPU.

MBR atau MDR (Memory Buffer atau Data Register) merupakan tempat penyimpanan (sementara) data yang baru saja dibaca dari atau data yang akan dituliskan ke memory.

PC (Program Counter) untuk menyatakan alamat lokasi instruksi yang akan dibaca olehCPU dari memory.

Referensi:

http://www.google.co.id

http://wordpress. /2009/04/15/ interkoneksi-bus.com

(sumber: Buku Pengenalan Komputer, Hal 154-155, karangan Prof.Dr.Jogiyanto H.M, M.B.A.,Akt.)