Mikrokontroller Berbasiskan RISC 8 bits Jenis PIC Microcontroller
Microchip ”PIC Microcontroller” atau dikenal sebagai PIC (Peripheral Interface Controller) Salah satu keluarga mikrokontroler terpopuler dan mudah digunakan. prosesor untuk keluarga mikrokontroler PIC16C61 sama dengan jenis Mikon PIC yang lain (PIC17, dan PIC18). Perbedaan terutama pada: bagaimana data diakses dalam bank register, bagaimana percabangan (JUMP) dan panggilan prosedur (CALL) dieksekusi, dan bagaimana data diindeks dan disimpan dalam stacks.
Blok Diagram PIC16C61 Mikrokontroler PIC 3/total
Prosessor dalam PIC berarsitektur seperti komputer RISC dengan memori untuk data dan instruksi yang terpisah ( mengacu ke arsitektur Harvard, lihat gambar 12.2).
Prosessor dalam PIC terdiri dari ALU yang memberikan operasi dasar untuk aritmatik dan bit. Terdapat beberapa register yang digunakan secara spesifik untuk mengendalikan operasi dari CPU yang terdiri dari : register I/O (Hardware registers ) = memori program register penyimpan data (RAM) = memori data
Seperti tampak pada gambar 12 Seperti tampak pada gambar 12.2 memori program yang terhubung terpisah dari ruang register. Hal ini memungkinkan memori program dibaca untuk instruksi ketika prosessor mengakses data dan memprosesnya. Kemampuan ini membuat mikrokontroller PIC mengeksekusi program lebih cepat dari yang lainnya.
Siklus eksekusi instruksi memerlukan empat siklus clocks, seperti tampak pada gambar 12.3.
Selama siklus eksekusi instruksi, instruksi berikutnya diambil (fetched) dari memori program. Q1 --- instruksi dibaca dan disimpan (latched) dalam register penampung (holding/decode), program counter (yang digunakan untuk mengalamati instruksi) dinaikkan nilainya, Q2 --- data yang akan diproses (kadang dengan data di dalam accumulator) dibaca dan diletakkan dalam buffer sementara. Q3 --- operasi pemrosesan data. Q4 --- data hasil pemrosesan disimpan , dan selanjutnya proses berulang untuk instruksi berikutnya (yang diletakkan pada register penahan ketika instruksi saat ini sedang dieksekusi). Ke empat siklus disebut juga siklus instruksi (instruction cycle).
Arsitektur Dasar PIC Register data dan instruksi yang terpisah. Mikrokontroler PIC 9/total
Metode Akses Direct Addressing, yakni pengalamatan register di dalam kelompok (bank) register yang dispesifikasikan instruksi. Immediately, jika nilai konstan akan dispesifikasikan, maka hal ini secara langsung dispesifikasikan di dalam instruksi. Index Register, menunjuk alamat register yang akan diakses. Metode ini dilakukan karena alamat yang akan diakses dapat dirubah secara matematis. Mikrokontroler PIC 10/total
Alamat Ketika mengakses register di dalam mikrokontroler secara langsung, 7 bit alamat secara eksplisit didefinisikan sebagai bagian dari instruksi. Ke 7 bit alamat ini mampu menspesifikasikan 128 alamat di dalam instruksi Ke 128 alamat register dikenal sebagai bank. Mikrokontroler PIC tingkat menengah mampu mengakses 32 register setiap bank, memiliki akses terhadap 4 bank oleh prosesor sampai 128 alamat secara keseluruhannya. Mikrokontroler PIC 11/total
Keterangandalam gambar 12.4 Program Counter mempertahankan alamat instruksi dalam program saat ini yang ada di memori program (yang berisikan instruksi-instruksi untuk processor mikrokontroler PIC), masing-masing akan dibaca dalam urutan dan disimpan dalam Instruction Register dan diterjemahkan oleh Instruction Decode dan Control Circuit. Memori program berisi kode yang akan dieksekusi sesuai aplikasi mikrokontroler PIC.
Isi dari memori program adalah seluruh instruksi pada setiap alamat yakni 12 bit untuk tingkat rendah, 14 bit tingkat menengah dan 16 bit untuk perangkat PIC17 dan PIC18. Perbedaan dengan mikrokontroler lain adalah program memori hanya selebar 8 bit, dan jika instruksi lebih dari 8 bit dibaca urutan berikutnya. Tersedianya instruksi penuh dalam program memori dan pembacaan dalam waktu yang sama membuat mikrokontroler PIC lebih cepat dalam operasi pembacaan instruksi (fetches) dibanding mikrokontroler lainnya.
Register W dalam PIC ALU menerima dua masukan yang salah satunya adalah register W. Ketika suatu hasil dilewatkan dari ALU, hasil ini dapat disimpan di register W atau di salah satu register file. Mikrokontroler PIC 15/total
Dalam mikrokontroler PIC, “accumulator” dikenal sebagai Working Register atau register W. Register ini tidak dapat diakses secara langsung sebagai register teralamati dalam mikrokontroler tingkat rendah dan menengah. Sebaliknya, isi register ini harus dipindahkan ke register lain yang dapat diakses secara langsung. Tetapi register ini dalam PIC17 dan PIC18 dapat diakses sebagaimana register teralamati. Jika ingin melakukan operasi penjumlahan “add‟, isi pada dua register yang sama, pertama harus dipindahkan isi satu register ke register W dan kemudian jumlahkan isi register ke-dua kepadanya.
Referensi Myke Predko, Programming and Customizing PIC® Microcontroller, McGraw-Hill, 2008. Mikrokontroler PIC
Ringkasan Arsitektur PIC mengacu kepada arsitektur Harvard Terdapat 4 siklus clock untuk setiap siklus instruksi Memori terdiri dari sekelompok register yang disebut « bank » Mikrokontroler PIC