You are on page 1of 38

KATA PENGANTAR

Segala puji bagi Allah Swt. Tuhan semesta alam. Selawat serta salam semoga dilimpahkan kepada Rasulullah Saw. Pemakalah bersyukur kepada Illahi Rabb yang telah memberikan hidayah serta taufik-Nya kepada pemakalah sehingga makalah yang berjudul SEJARAH MICKROPROSESOR,MICROCOMPUTER,MICROCONTROLER dalam mata kuliah Ilmu Budaya Dasar dapat terselesaikan. Dengan adanya pemaparan makalah ini, diharapkan mahasiswa dapat memahami secara mendalam tentang hal-hal yang berkaitan dengan materi yang di kaji dalam SEJARAH MICKROPROSESOR,MICROCOMPUTER,MICROCONTROLER.Sehinggamahasiswa emahami masalah-masalah social secara interdisipliner serta mampu mengembangkan wawasan dan kepekaan terhadap lingkungan social. Dalam penyusunan makalah ini kami menyadari bahwa masih terdapat kekurangan dan kekhilafan. Oleh karena itu, kepada para pembaca , pemakalah mengharapkan saran dan kritik demi kesempurnaan penulisan dan menjadi pelajaran untuk selanjutnya. Wallahualam bissawab.

BAB I PENDAHULUAN

Ada beberapa inovasi di bidang elektronika mikro yang membuat komputer mikro dapatdibuat: sirkuit terpadu ( IC) yang mulaI dI kembangkan pada tahun 1959 serta mikroprosesor yang pertama kali keluar pada tahun 1971. IC memungkinkan minaturisasi dari sirkuit-sirkuit memori komputer, sementara mikroprosesor mengurangi ukuran CPU komputer hingga ukuran yang signifikan. Komputer mikro pertama kali (berukuran desktop) muncul pada tahun 1974, yang ditawarkan oleh Micro Instrumentation Telemetry System (MITS) yang didirikan oleh Ed Roberts tahun 1969. Komputer mikro tersebut, Altair 8800, dijual sebagai kit yang ditawarkan dengan sedikit di bawah 395 US$. Kit komputer tersebut harus dirakit sendiri oleh pengguna (maksud "perakitan" di sini adalah penyolderan dan penyatuan komponen, bukan seperti assembling PC saat ini yang hanya membutuhkan obeng). Altair 8800 dipersenjatai dengan mikroprosesor 8-bit Intel 8080 dan memori dengan jumlah 256 bytes (bukan kilobyte) saja; tanpa monitor, dan tanpa keyboard! Pemilik komputer tersebut harus membeli keyboard (pada waktu itu bukan keyboard, melainkan teletype) dan monitor secara terpisah. Karena tidak memiliki monitor, pengguna tidak akan menemukan pesan apa-apa dari komputer Altair 8800 ini selain LED (Light Emitting Diode) yang berkelap-kelip seperti lampu diskotek, dan juga buzzer dengan suara beep-beep-beep. Altair 8800 memiliki sebuah system bus dengan arsitektur terbuka yang disebut dengan bus S100 karena memiliki 100 pin tiap slotnya. Arsitektur terbuka ini mengizinkan siapa saja untuk mengembangkan papan sirkuit agar sesuai dengan slotnya dan kemudian dapat bertatap muka dengan sistem. Hal ini, membuat beberapa pihak mengembangkan banyak periferal atau tambahan untuk Altair. Beberapa perangkat lunak pun dapat dibuat untuk mendukung Altair, termasuk Micro-Soft BASIC dan sistem operasi CP/M buatan Gary Kildall dariDigital Research Incorporated.

Bill Gates dan Paul Allen yang mendirikan Micro-Soft pun turut serta dalam mengembangkan perangkat lunak untuk komputer mikro Altair 8800. Awalnya mereka hanya berkutat pada pengembangan perangkat lunak pada minicomputer DEC PDP-11, sebelum akhirnya mereka melihat iklan di sebuah majalah Popular Electronics edisi Januari 1975 dengan tajuk "World's First Microcomputer Kit to Rival Commercial Models". Mereka sebenarnya dapat membangun sebuah perangkat lunak untuk komputer tersebut, akan tetapi memiliki satu buah kendala: mereka belum pernah menggunakan atau memiliki komputer tersebut. Beruntung, mereka mendapatkan data tentang spesifikasi teknis mikroprosesor yang memperkuat Altair, Intel 8080. Mereka pun akhirnya dapat membangun sebuah bahasa

pemrograman BASIC (Beginners All-purpose Symbolic Instruction Code), yang mereka namakan sebagai Microsoft BASIC. Selanjutnya, mereka datang ke MITS untuk menjual BASIC kepada MITS, dan MITS pun setuju untuk membayar Micro-Soft dengan uang sebesar US$180,000. Media penyimpanan yang digunakan oleh Micro-Soft untuk mendistribusikan Micro-Soft BASIC adalah media penyimpanan yang berbentuk pita kertas berlubang. Permintaan terhadap kit komputer mikro pun secara cepat dan tidak disangkasangka, sangat banyak. Banyak perusahaan-perusahaan pemula akhirnya turut terjun ke dalam pengembangan komputer mikro, hingga ada sebuah firma yang cukup besar, Tandy Corporation(Radio Shack), memperkenalkan model komputer mikro miliknya yang disebut sebagai TRS-80 pada tahun 1977. TRS-80 secara cepat menguasai pasaran, karena menawarkan dua fitur yang menarik (yang sebelumnya tidak dimiliki oleh Altair): keyboard dan monitorCathode-ray terminal (CRT). Komputer ini juga populer karena dapat diprogram oleh pengguna dan pengguna dapat menyimpan informasi dengannya dengan menggunakan kaset tape. Tandy memilih Zilog Z80 sebagai otak yang digunakan oleh Radio Shack TRS-80 dan melengkapinya dengan RAM dengan kapasitas 4096 bytes (4K). IBM juga sebenarnya meluncurkan komputer mikro pada tahun 1975, yang disebut sebagai IBM Model 5100, tetapi bukan PC. Model ini memiliki memori 16 Kilobyte, sebuah perangkat character display dengan resolusi 16 baris x 64

karakter, interpreter bahasa BASICterintegrasi, serta tape drive IBM DC-300 terintegrasi yang digunakan sebagai media penyimpanan. Sayangnya, sistem ini kelewat mahal, karena dihargai

9000 US$, sangat jauh berbeda dengan sistem Altair 8800. Dengan demikian, sistem IBM Model 5100 ini tidak ikut turun dalam kompetisi komputer mikro yang berharga murah. Akibat kelewat mahal harganya, sistem ini pun tidak terlalu laku di pasaran. IBM pun mengembangkan Model 5110 dan Model 5120 sebagai penerus IBM Model 5100, tetapi tidak banyak membantu penjualan komputer ini. Pada tahun 1976, dua orang pemuda Stephen Wozniak dan Steven Jobs mendirikan sebuah perusahaan manufaktur komputer yang diberi nama Apple Computers. Produk pertama mereka, Apple I dihargai hanya 666,66US$. Jobs dan Wozniak hanya membuat sedikit saja komputer Apple I, tapi sukses terjual hingga mereka mendapatkan lebih dari 20000 US$. Akibat kesuksesan ini, Apple pun merespons dengan Apple II, yang dirilis tahun 1977. Hal ini dikarenakan Apple II memiliki tampilan berwarna (meski hanya 6 warna saja) yang belum ditemui pada komputer pribadi pada saat itu. Karena komputer mikro ini, Apple pun menjadi perusaahan di Amerika Serikat yang berkembang paling cepat dalam sejarah. Perkembangannya yang cepat menginspirasikan banyak pihak yang turut serta terjun ke dalam manufaktur komputer mikro. Sebelum memasuki dekade 1980-an, pasar komputer personal telah didefinisikan dengan jelas (setelah sebelumnya hanya mainframe dan minicomputer). Sama seperti TRS-80 yang tidak menggunakan prosesor dari Intel, Steven Jobs dan Steven Wozniak memakaikan mikroprosesor yang juga bukan dibuat oleh Intel Corporation pada komputer Apple II, sehingga ia tidak dapat secara langsung kompatibel dengan program yang didesain untuk komputer dengan basis mikroprosesor Intel. Pada Apple II, Wozniak dan Jobs menggunakan prosesor Mostek 6502yang dibuat oleh MOS Technology. Selain pada MITS, Micro-Soft juga melakukan pemrograman ulang Microsoft BASIC untuk Altair 8800 agar dapat dijalankan pada komputer Apple II, dan TRS-80 yang menggunakan mikroprosesor berbeda. Perangkat lunak selanjutnya yang dibuat oleh Micro-Soft adalah bahasa pemrograman Fortran (Formula Translator) yang dirilis pada tahun 1977. Pada 12 Agustus 1981, IBM mencoba untuk mengoreksi kesalahannya yang terdahulu dengan merilis komputer mikro yang lebih murah dibandingkan komputer terdahulu,

yang disebut sebagai IBM PC 5150. Komputer IBM PC 5150 dilengkapi dengan menggunakan mikroprosesor Intel 8088 dengan kecepatan 4.47 MHz dan memori ROM 40,963 bytes (40K) serta memori RAM 16,384 bytes (16K). Karena menggunakan sistem operasi DOS, maka IBM PC dilengkapi dengan dua (Model 176) atau satu buah (Model 166) floppy disk drive5 inci yang dapat menyimpan hanya 160K per disketnya, dan sebuah layar monitor berwarna sebagai pilihan opsional. Untuk alat input, IBM menggunakan sebuah keyboard buatan IBM sendiri dengan jumlah tombol 83-buah. Dan dengan dirilisnya IBM PC, IBM PC pun menjadi standar de facto dalam industri komputer mikro dan selanjutnya menguasai pasar sistem operasi komputer mikro.

BAB II PEMBAHASAN
1.MIKROPROSESOR

Microprosesor adalah serpih tunggal yang memiliki rangkaian aritmatika,logika dan pengendalian (ALU/CU),dari suatu pemprosesan bertujuan umum,sistem pengendalian dan sistem perhitungan.Sebuah mikroprosesor adalah sebuah central processing unit (CPU) elektronik komputer yang terbuat dari transistor mini dan sirkuit lainnya di atas sebuah sirkuit terintegrasi semikonduktor. Sebelum berkembangnya mikroprosesor,CPUelektronik terbuat dari sirkuit terintegrasi TTL terpisah, sebelumnya, transistor individual; sebelumnya lagi, dari tabung vakum. Bahkan telah ada desain untuk mesin computer sederhana atas dasar bagian mekanik seperti gear ,shaft, lever, Tinkertoy, dll. Evolusi dari mikroprosesor telah diketahui mengikuti Hukum Moore yang merupakan peningkatan performa dari tahun ke tahun. Teori ini merumuskan bahwa daya penghitungan akan berlipat ganda setiap 18 bulan, sebuah proses yang benar terjadi sejak awal 1970-an; sebuah kejutan bagi orang-orang yang berhubungan. Dari awal sebagai driver dalam kalkulator, perkembangan kekuatan telah menuju ke dominasi mikroprosesor di berbagai jenis komputer; setiap sistem dari mainframe terbesar sampai ke komputer pegang terkecil sekarang

menggunakan mikroprosesor sebagai pusatnya. Karakteristik Mikroprosesor Berikut adalah karakteristik penting dari mikroprosesor : 1. Ukuran bus data internal (internal data bus size): Jumlah saluran yang terdapat dalam mikroprosesor yang menyatakan jumlah bityang dapat ditransfer antar komponen di dalam mikroprosesor.

2. Ukuran bus data eksternal (external data bus size): Jumlah saluran yang digunakan untuk transfer data antar komponen antara mikroprosesor dan komponen-komponen di luar mikroprosesor. 3. Ukuran alamat memori (memory address size): Jumlah alamat memori yang dapat dialamati oleh mikroprosesor secara langsung. 4. Kecepatan clock (clock speed): Rate atau kecepatan clock untuk menuntun kerja mikroprosesor. 5. Fitur-fitur spesial (special features): Fitur khusus untuk mendukung aplikasi tertentu seperti fasilitas pemrosesan floating point, multimedia dan sebagainya. Central Processing Unit Unit Pengolah Pusat (UPP) (bahasa Inggris: CPU, singkatan dari Central Processing Unit), merujuk Kepada perangkat keras komputer yang memahami dan melaksanakan

perintah dan data dari perangkat lunak. Istilah lain, prosesor (pengolah data), sering digunakan untuk menyebut CPU. Adapun mikroprosesor adalah CPU yang diproduksi dalam sirkuit terpadu, seringkali dalam sebuah paket sirkuit terpadu-tunggal. Sejak pertengahan tahun 1970an, mikroprosesor sirkuit terpadu-tunggal ini telah umum digunakan dan menjadi aspek penting dalam.

Komponen CPU

Diagram blok sederhana sebuah CPU. Komponen CPU terbagi menjadi beberapa macam, yaitu sebagai berikut.

Unit kontrol yang mampu mengatur jalannya program. Komponen ini sudah pasti terdapat dalam semua CPU.CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi-fungsi operasinya. termasuk dalam tanggung jawab unit kontrol adalah mengambil intruksi-intruksi dari memori utama dan menentukan jenis instruksi tersebut. Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU. Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output. Dengan demikian tugas dari unit kendali ini adalah:

Mengatur dan mengendalikan alat-alat input dan output. Mengambil instruksi-instruksi dari memori utama. Mengambil data dari memori utama (jika diperlukan) untuk diproses. Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja dari ALU. Menyimpan hasil proses ke memori utama.

Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya di gunakan untuk menyimpan data saat di olah ataupun data untuk pengolahan selanjutnya. Secara analogi, register ini dapat diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara manual, sehingga otak dapat diibaratkan sebagai CPU, yang berisi ingatan-ingatan, satuan kendali yang mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.

ALU unit yang bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan. ALU sering di sebut mesin bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean yang masingmasing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika (matematika) yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.

Tugas lain dari ALU adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi logika meliputi perbandingan dua operand dengan menggunakan operator logika tertentu, yaitu sama dengan (=), tidak sama dengan ( ), kurang dari (<), kurang atau sama dengan ( ), lebih besar dari (>), dan lebih besar atau sama dengan ( ).

CPU Interconnections adalah sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU, unit kontrol dan register-register dan juga dengan bus-bus eksternal CPU yang menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan /keluaran.

Cara Kerja CPU Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di RAM (melalui Input-storage); apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage). Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter. Sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register (dalam hal ini di Operand-register). Jika berdasar instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di Accumulator. Apabila hasil pengolahan telah selesai, maka

Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices. Fungsi CPU CPU berfungsi seperti kalkulator, hanya saja CPU jauh lebih kuat daya pemrosesannya. Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang dimasukkan melalui beberapa perangkat keras, seperti papan ketik, pemindai, tuas kontrol, maupun tetikus. CPU dikontrol menggunakan sekumpulan instruksi perangkat lunakkomputer. Perangkat lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media penyimpan, seperti cakram keras, disket,cakram padat, maupun pita perekam. Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu pada memori fisik (RAM), yang mana setiap instruksi akan diberi alamat unik yang disebut alamat memori. Selanjutnya, CPU dapat mengakses data-data pada RAM dengan menentukan alamat data yang dikehendaki. Saat sebuah program dieksekusi, data mengalir dari RAM ke sebuah unit yang disebut dengan bus, yang menghubungkan antara CPU dengan RAM. Data kemudian didekode dengan menggunakan unit proses yang disebut sebagai pendekoder instruksi yang sanggup

menerjemahkan instruksi. Data kemudian berjalan ke unit aritmatika dan logika (ALU) yang melakukan kalkulasi dan perbandingan. Data bisa jadi disimpan sementara oleh ALU dalam sebuah lokasi memori yang disebut dengan register supaya dapat diambil kembali dengan cepat untuk diolah. ALU dapat melakukan operasi-operasi tertentu, meliputi penjumlahan, perkalian, pengurangan, pengujian kondisi terhadap data dalam register, hingga mengirimkan hasil pemrosesannya kembali ke memori fisik, media penyimpan, atau register apabila akan mengolah hasil pemrosesan lagi. Selama proses ini terjadi, sebuah unit dalam CPU yang disebut dengan penghitung program akan memantau instruksi yang sukses dijalankan supaya instruksi tersebut dapat dieksekusi dengan urutan yang benar dan sesuai. Percabangan instruksi

Pemrosesan instruksi dalam CPU dibagi atas dua tahap, Tahap-I disebut Instruction Fetch, sedangkan Tahap-II disebut Instruction Execute. Tahap-I berisikan pemrosesan CPU dimana Control Unit mengambil data dan/atau instruksi dari main-memory ke register, sedangkan Tahap-II berisikan pemrosesan CPU dimana Control Unit menghantarkan data dan/atau instruksi dari register ke main-memory untuk ditampung di RAM, setelah Instruction Fetch dilakukan. Waktu pada tahap-I ditambah dengan waktu pada tahap-II disebut waktu siklus mesin (machine cycles time). Penghitung program dalam CPU umumnya bergerak secara berurutan. Walaupun demikian, beberapa instruksi dalam CPU, yang disebut dengan instruksi lompatan, mengizinkan CPU mengakses instruksi yang terletak bukan pada urutannya. Hal ini disebut juga percabangan instruksi (branching instruction). Cabang-cabang instruksi tersebut dapat berupa cabang yang bersifat kondisional (memiliki syarat tertentu) atau non-kondisional. Sebuah cabang yang bersifat non-kondisional selalu berpindah ke sebuah instruksi baru yang berada di luar aliran instruksi, sementara sebuah cabang yang bersifat kondisional akan menguji terlebih dahulu hasil dari operasi sebelumnya untuk melihat apakah cabang instruksi tersebut akan dieksekusi atau tidak. Data yang diuji untuk percabangan instruksi disimpan pada lokasi yang disebut dengan flag. Control Unit Unit kontrol (bahasa Inggris: 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. Pada awal-awal desain komputer, CU diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Beberapa worddari microprogram dipilih oleh microsequencer dan bit yang mengontrol bagian-bagian datang dari dari word-word tersebut perangkat tersebut, akan secara di langsung antaranya

berbeda

termasuk

adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip. Pada

komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya (supervisor). Macam-macam CU Single-Cycle CU Proses di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satu cycle, maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masingmasing control line hanya merupakan fungsi dari opcode saja. Clock cycle harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses men-decode opcode untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND). Multi-Cycle CU Berbeda dengan unit kontrol yang single-cycle, unit kontrol yang multi-cycle lebih memiliki banyak fungsi. Dengan memperhatikan statedan opcode, fungsi boolean dari masingmasing output control line dapat ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah input logic. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bit opcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU; bukan instruksi cycle selanjutnya. 2.MIKROKOMPUTER Komputer mikro (Inggris: microcomputer) CPU adalah utamanya. sebuah kelas komputer juga yang dikenal

menggunakan mikroprosesor sebagai

Komputer

mikro

sebagai Personal Computer (PC), Home Computer, atau Small-business Computer. Komputer mikro yang diletakkan di atas meja kerja dinamakan dengan desktop, sedangkan yang dapat dijinjing (portabel) dinamakan dengan Laptop, karena sering diletakkan di atas paha. Ketika komputer mikro pertama kali muncul ke pasaran, komputer jenis ini dianggap sebagai perangkat yang hanya digunakan oleh satu orang saja, yang mampu menangani informasi yang berukuran 4-bit, 8-bit, atau 16-bit (dibandingkan dengan minicomputer atau mainframe yang

mampu menangani informasi lebih dari 32-bit) pada satu waktunya. Pengembangan lebih lanjut, menjadikan klasifikasi antara mainframe, minicomputer dan komputer mikro menjadi tidak relevan lagi, karena komputer mikro yang baru mampu menangani informasi 32-bit, atau 64bit dalam satu waktunya, sama seperti halnya mainframe atau minicomputer. Selain itu, komputer mikro juga sekarang telah mendukung banyak pengguna dalam satu waktunya. komputer mikro didesain untuk digunakan di dalam rumah, sekolah, atau perkantoran. Jenis-jenis Komputer Mikro Berikut ini adalah beberapa jenis komputer mikro yang pernah beredar (Daftar ini tidak lengkap):

Altair 8800 Tandy TRS-80 IBM PC/kompatibel (Desktop) IBM PC/kompatibel (Laptop) Apple I Apple II Apple Lisa Apple Macintosh Apple iMac Apple MacMini Apple PowerMac Apple PowerBook Apple iBook Apple MacBook

C.MIKROKONTROLER Pengendali mikro (Inggris: microcontroller) adalah sistem mikroprosesor lengkap yang terkandung di dalam sebuah chip. Mikrokontroler berbeda dari mikroprosesor serba guna yang digunakan dalam sebuah PC, karena sebuah mikrokontroler umumnya telah berisi komponen pendukung sistem minimal mikroprosesor, yakni memori dan antarmuka I/O.

Sebuah mikrokontroler AVR ATMega8 dalam kemasan PDIP-28 buatan ATMEL. Mikrokontroler ini adalah mikrokontroler 8-bit yang mampu bekerja pada kecepatan Mikrokontroler populer yang pertama dibuat oleh Intel pada tahun 1976, yaitu mikrokontroler 8bit Intel 8748. [1]Mikrokontroler tersebut adalah bagian dari keluarga mikrokontroler MCS48. [2] Sebelumnya, Texas instruments telah memasarkan mikrokontroler 4-bit pertama

yaitu TMS 1000 pada tahun 1974. TMS 1000 yang mulai dibuat sejak 1971 adalah mikrokomputer dalam sebuah chip, lengkap dengan RAM dan ROM. Jenis mikrokontroler AMCC Hingga Mei 2004, mikrokontroler ini masih dikembangkan dan dipasarkan oleh IBM, hingga kemudian keluarga 4xx dijual ke Applied Micro Circuits Corporation.

403 PowerPC CPU (PPC 403GCX) 405 PowerPC CPU (PPC 405EP, PPC 405GP/CR, PPC 405GPr, PPC NPe405H/L) 440 PowerPC Book-E CPU (PPC 440GP, PPC 440GX, PPC 440EP/EPx/GRx, PPC 440SP/SPe)

Atmel

Atmel AT91 series (ARM THUMB architecture) AT90, Tiny & Mega series AVR (Atmel Norway design) Atmel AT89 series (Intel 8051/MCS51 architecture) MARC4

Cypress MicroSystems

CY8C2xxxx (PSoC)

Freescale Semiconductor Hingga 2004, mikrokontroler ini dikembangkan dan dipasarkan olehMotorola, yang divisi semikonduktornya dilepas untuk mempermudah pengembangan Freescale Semiconductor.

8-bit (68HC05 (CPU05), 68HC08 (CPU08), 68HC11 (CPU11)) 16-bit (68HC12 (CPU12), 68HC16 (CPU16), Freescale DSP56800 (DSPcontroller)) 32-bit (Freescale 683XX (CPU32), MPC500, MPC 860 (PowerQUICC), MPC 8240/8250 (PowerQUICC II), MPC 8540/8555/8560 (PowerQUICC III))

Fujitsu

FMC Family (8/16 bit) FR Family (32 bit) FR-V Family (32 bit RISC)

Holtek

HT8

Intel

8-bit (8XC42, MCS48, MCS51, 8061, 8xC251)

16-bit (80186/88, MCS96, MXS296, 32-bit, 386EX, i960)

Microchip

Low End, Mikrokontroler PIC 12-bit Mid Range, Mikrokontroler PIC 14-bit

(PIC16F84, PIC16F877)

16-bit instruction PIC High End, Mikrokontroler PIC 16-bit

National Semiconductor

COP8, CR16

NEC

17K, 75X, 78K, V850

Philips Semiconductors

LPC2000, LPC900, LPC700

Renesas Tech. Corp. (Renesas adalah perusahan patungan Hitachi dan Mitsubishi.)

H8, SH, M16C, M32R

STMicroelectronics

ST 62, ST 7

Texas Instruments

TMS370, MSP430

Western Design Center


8-bit (W65C02-based Cs) 16-bit (W65816-based Cs)

Ubicom

SX-28, SX-48, SX-54


o

Seri Ubicom's SX series adalah jenis mikrokontroler 8 bit yang, tidak seperti biasanya, memiliki kecepatan tinggi, memiliki sumber daya memori yang besar, dan fleksibilitas tinggi. Beberapa pengguna menganjurkan mikrokontroller pemercepat PICs. Meskipun keragaman jenis mikrokontroler Ubicom's SX sebenarnya terbatas, kecepatan dan kelebihan sumber dayanya yang besar membuat programmer bisa membuat perangkat virtual lain yang dibutuhkan. Referensi bisa ditemukan di Parallax's Web site, sebagai penyalur utama.

IP2022
o

Ubicom's IP2022 adalah mikrokontroler 8 bit berkecepatan tinggi (120 MIPs). Fasilitasnya berupa: 64k FLASH code memory, 16k PRAM (fast code dan packet buffering), 4k data memory, 8-channel A/D, various timers, and on-chip support for Ethernet, USB, UART, SPI and GPSI interfaces.

Xilinx

Microblaze softcore 32 bit microcontroller Picoblaze softcore 8 bit microcontroller

ZiLOG

Z8 Z86E02

BAB III PENUTUP Komputer mikro pertama kali (berukuran desktop) muncul pada tahun 1974, yang ditawarkan oleh Micro Instrumentation Telemetry System (MITS) yang didirikan oleh Ed Roberts tahun 1969. Komputer mikro tersebut, Altair 8800, dijual sebagai kit yang ditawarkan dengan sedikit di bawah 395 US$. Kit komputer tersebut harus dirakit sendiri oleh pengguna (maksud "perakitan" di sini adalah penyolderan dan penyatuan komponen, bukan seperti assembling PC saat ini yang hanya membutuhkan obeng). Altair 8800 dipersenjatai dengan mikroprosesor 8-bit Intel 8080 dan memori dengan jumlah 256 bytes (bukan kilobyte) saja; tanpa monitor, dan tanpa keyboard! Pemilik komputer tersebut harus membeli keyboard (pada waktu itu bukan keyboard, melainkan teletype) dan monitor secara terpisah. Karena tidak memiliki monitor, pengguna tidak akan menemukan pesan apa-apa dari komputer Altair 8800 ini selain LED (Light Emitting Diode) yang berkelap-kelip seperti lampu diskotek, dan juga buzzer dengan suara beep-beep-beep. Pemrosesan instruksi dalam CPU dibagi atas dua tahap, Tahap-I disebut Instruction Fetch, sedangkan Tahap-II disebut Instruction Execute. Tahap-I berisikan pemrosesan CPU dimana Control Unit mengambil data dan/atau instruksi dari main-memory ke register, sedangkan Tahap-II berisikan pemrosesan CPU dimana Control Unit menghantarkan data dan/atau instruksi dari register ke main-memory untuk ditampung di RAM, setelah Instruction Fetch dilakukan. Waktu pada tahap-I ditambah dengan waktu pada tahap-II disebut waktu siklus mesin (machine cycles time). Microprosesor adalah serpih tunggal yang memiliki rangkaian aritmatika,logika dan pengendalian (ALU/CU),dari suatu pemprosesan bertujuan umum,sistem pengendalian dan sistem perhitungan.Sebuah mikroprosesor adalah sebuah central processing unit (CPU) elektronik komputer yang terbuat dari transistor mini dan sirkuit lainnya di atas sebuah sirkuit terintegrasi semikonduktor. Sebelum berkembangnya mikroprosesor,CPUelektronik terbuat dari sirkuit terintegrasi TTL terpisah, sebelumnya, transistor individual; sebelumnya lagi,

dari tabung vakum. Bahkan telah ada desain untuk mesin computer sederhana atas dasar bagian mekanik seperti gear ,shaft, lever, Tinkertoy, dll.

...dan beberapa mikrokontroler yang bisa diprogram secara BASIC


Ada banyak mikrokontroller yang dirancang oleh produsen sebagai sarana hobi. Biasanya mikrokontroller seperti ini dimuati interpreter BASIC, dihubungkan ke bagian Dual Inline Pin bersama power regulator dan beberapa fasilitas lain. PICs sepertinya sangat popular untuk jenis ini, barangkali karena adanya perlindungan terhadap listrik statis.

BASIC Stamp. Nama besar di mikrokontroler BASIC, meskipun sebenarnya lamban dan harganya tidak sebanding. SX-Key. Harga murahnya harus dibayar dengan kualitas yang buruk.

Murah, tidak lebih dari sekedar PIC yang dimuati BASIC. Bagian programmernya ditancapi dengan 3 resistors. Penawaran BASIC menawarkan fungsionalitas yang besar dengan adanya fasilitas IF..GOTO secara terbatas. Kata kunci: blog 2, saat mentari, mikro elektronika Sebelumnya: FABRIKASI RANGKAIAN TERPADU (Mikro Elektronika) Selanjutnya : SEARCHING

Pendahuluan
apa itu microcontroller ?
Setiap orang dewasa ini tentu sudah sangat familiar dengan komputer , tapi tidak semua orang tahu bagaimana sebuah komputer itu bekerja. begitu juga

dengan mesin cuci,AC,oven dan peralatan lain yang serba otomatis kita semua sudah terbiasa menggunakannya tapi tapi tidak semua orang tahu bagaimana peralatan otomatis itu bekerja. Tentu tidak semua orang ingin mengetahuinya karena dianggap sulit .Tapi tahukah anda bahwa semua itu anda dapat pelajari dengan mudah. Bagian utama sebuah komputer atau peralatan otomatis adalah apa yang disebut prosessor. lebih khusus untuk sebuah komputer biasa disebut microprosesordan untuk peralatan otomatis spt ac,mesin cuci, remote control, dll disebut microcontroller tapi tugas keduanya adalah sama yaitu menjadi pemroses/ "pemikir" utama . Untuk komputer anda mungkin sudah sering mendengar pentium I, Pentium II , Atlon dsb. itu adalah jenis microprossesor sebuah pc. Pentium adalah microprosesor buatan perusahaan Intel dan Atlon buatan AMD .Tapi pada tutorial ini kita hanya akan mempelajari Microcontroller diantaranya PIC16F84 buatan microchip , AT89c51 buatan ATMEL dan MC68HC11 buatan motorola .bagi pemula pilih salah satu saja untuk memulai mempelajarinya, saya sarankan pilih AT89C51 (sejenis dg 8051 buatan intel) atau PIC16f84. jika anda sudah menguasai satu jenis microcontroller maka akan mudah mempelajari microcontroller jenis lainnya karena pada prinsipnya sama. Bagaimana microcontroller bekerja pada sebuah mesin cuci ? Gambar dibawah ini menggambarkan contoh rangkaian microcontroller dlm sebuah mesin cuci yg disederhanakan . Agar rangkaian bekerja kita harus memberi perintah (program ) kepada microcontroller , programnya adalah sbb: " jika tombol start ditekan nyalakan led hijau dan berikan sinyal 5volt dan jika tombol stop ditekan nyalakan led merah dan stop sinyal 5volt"

Instruksi/program yg telah kita buat kita masukan kedalam microcontroller dengan menggunakan sebuah alat yg dinamakan programmer (yg dapat kita buat sendiri) . Bagian yang terdapat dalam sebuah microcontroller : MEMORI untuk menyimpan program , CPU yang melaksanakan program yg ada

dimemori, PORT untuk mengambil sinyal dari luar (pd contoh diatas : tombol start dan stop dihubungkan ke port sbg input ) dan untuk mengeluarkan sinyal (pada contoh sinyal 5V , dan led merah /hijau) , sinyal yg diambil dan dikeluarkan adalah sinyal digital 5 volt (logika 1) atau 0 volt (logika 0) .

SEJARAH
1969, BUSICOM membuat calculator . microprocessor pertama dibuat. 1971, Microprocessor 4004 microprocessor 4 bit pertama ,6 000 operasi perdetik. 1972, Microprocessor 8008.microprosesor 8 bit pertama , memori 16Kb, 45 instruksi dan 300 000 operasi per detik. 1974, Microprocessor 8 bit dng nama 8080 ,memori 64Kb 75 instruksi, harga saat itu $360. Motorola mengeluarkan , microprocessor 8 bit , 6800, 6820 dan 6850. 1975, Microprosesor Technologi MOS 6501 , 6502, 8080 dan 6800 . 1976, Z80. 8080, Z80 64 Kb 176 instruksi buatan ZILOG, 1976, Microprocessor 8-bit 8085 buatan Intel .

Perbedaan Microcontroller dengan Microprocessor


Microcontroller digunakan khusus untuk mengontrol peralatan tertentu, tidak bisa digunakan untuk tugas2 lain, microcontroller otak dari sebuah peralatan otomatis spt AC, mesin cuci, TV,remote control dll. microprocessor digunakan untuk memproses berbagai macam tugas, contoh penggunaan microprosesor antara lain pada komputer/pc ia bisa digunakan untuk berbagai macam tugas spt pengolah kata, games, disign grafik,multimedia dll, microprosessor membutuhkan memori luar memori, atau components untuk mengirim dan menerima data . bisa dibilang microprocessor otak dari sebuah computer.

Bagian-bagian sebuah Microcontroller :


1.1 Memori dan register

Memori
Memori adalah bagian microcontroller untuk menyimpan Program dan data.

ada 3 bagian utama sebuah memori yaitu alamat,data dan control baca atau tulis R/W

jenis memory antara lain : 1. RAM (random access memory) : CPU bisa menulis/menyimpan dan membaca kedlm memori ini , memori akan hilang jika power supply dihilangkan. 2. ROM (read-only memory) : memori yg hanya bisa sekali ditulis dan selanjutnya hanya bisa dibaca .data tdk hilang jika power dihilangkan dihilangkan 3. EPROM (erasable programmable read-only memory) : CPU bisa menulis/menyimpan dan membaca kedlm memori, memori tdk hilang jika power supply dihilangkan. (cara penulisan dgn cara tertentu/dgn alat programmer) cara menghapus data dengan disinari cahaya ultra violet atau bisa juga dgn sinar matahari beberapa menit 4. EEPROM (electrically erasable programmable read-only memory) : CPU bisa menulis/menyimpan dan membaca kedlm memori, memori tdk hilang jika power supply dihilangkan. (cara penulisan dgn cara tertentu/dgn alat programmer) RAM PERMANEN TEMPAT PENYIMPAN TDK volatile DATA EEPROM TDK Nonvolatile PROGRAM/DATA EPROM TDK Nonvolatile PROGRAM ROM YA Nonvolatile PROGRAM

Register
Mcu dalam memproses data memori , ia akan mengambil data dimemori dan menyimpan kedalam register didlm CPU setelah diproses hasil akan dikirim kembali kememori. Register di cpu biasanya terdiri dari 2 jenis yaitu Akumulator dan index register Accumulators digunakan dlm perhitungan arithmetic operations, like addition, subtraction, or performing logical and bit operations .Index registers digunakan menujuk alamat data di memory. contoh register pada MCU 68HC11.

68HC11 punya 2 register accumulators, labeled A and B. masing register 8-bit : menyimpan 1 byte data. index registers X dan Y , 16-bit biasa digunakan menunjukan data di memory. Stack Pointer, atau SP register, menyimpan program stack. stack menyimpan temporary data, dan menyimpan alamat return sebelum subroutine dipanggil. Register Program Counter, or PC, menyimpan alamat yg sedang diexsekusi CPU. nilai PC automatis bertambah 1 tiap instruksi dieksekusi.

1.2 Central Processing Unit /CPU


CPU adalah bagian utama sebuah microcontroller dialah yg melaksanakan(mengeksekusi) program yg ada di memori dalam melaksanakan tugasnya ia dibantu beberpa beberapa memori internal di dlm cpu yg disebut register ,

dalam melakukan berbagai operasi perhitungan data yg ada dimemori , cpu mengambil data dimemori dan menyimpan diregister agar lebih efisien. misal operasi penjumlahan data di 2 lokasi memori lokasi data dilokasi memori1 disimpan diregister1 data kedua dari lokasi memori disimpan di register2 hasilnya dismpan diregister3

1.3 Bus/jalur
Bus adalah nama untuk group koneksi2 ada 2 jenis bus : bus data dan bus alamat jalur data terdiri dari 8 bit,16 bit,32 bit tapi untuk microcontroller yg kita pelajari terdiri dari 8 bit data (1byte) dan jalur alamat jumlahnya variatif tergantung jenis microcontroller, jumlah jalur alamat menunjukan banyaknya lokasi memori yg bisa diakses. Misal bus alamat ada 3 (A0,A1,A2) maka lokasi alamat di memori yg bisa diakses adalah ada 8 lokasi alamat di memori , 8 = 23

ALAMAT (A2-A1A0) 000 001 010 011

ISI MEMORI

100 101 110 111


Memori dng 3 jalur alamat

Jadi jika bus alamat ada 16 bit (A0~A15) maka jumlah alamat yang bisa diakses sebanyak 216 = 65536 lokasi memori

1.4 Input-output unit


Untuk berhubungan dengan dunia luar seperti dengan relay, LED, sensor, switch dan lain-lain microcontroller menggunalkan input/output port, jenis port ada 3 yaitu port untuk mengambil sinyal dari luar(disebut input port) ,port untuk mengeluarkansinyal (output port) dan ada port yg bisa untuk input maupun output pd kaki yg sama 1 kaki / bidirectional .

cara menulis/membaca persis seperti menulis/membaca memori, cuma alamatnya bisa nomor port/pin microcontroller

1.5 Komunikasi Serial


Untuk berkomunikasi dengan microcontroller / pc lain salah satu metoda yang populer adalah secara serial dan paralel misal microcontroller akan mengirim 1 byte/huruf "A" (dlm biner 1110 1111) mengirim secara paralel berarti satu clock dikirim sekaligus tapi butuh minimal 8 kabel/pin dan secara serial ia dikirim satu persatu bit, jadi minimal 8 clock dibutuhkan untuk mengirim "A" tapi hanya membutuhkan minimal 2 kabel/ pin,

Komunikasi serial antara Microcontroller dng Microcontroller atau dgn PC untuk microcontroller biasanya menggunakan serial , jadi butuh hanya 2 pin untuk mengirim dan menerima pada waktu yang sama dan ini disebut full duplex.

1.6 Timer unit

untuk mengetahuai waktu , panjang sinyal, frekwensi dll kita membutuhkan timer. dasarnya adalah timer free-run counter adalah sebuah register counter yang nilainya bertambah satu mulai dari 0000 sampai ffff kemudian kembali 0000 terus menerus berulang .

1.7 Watchdog
kadang kadang karena berbagai sebab microcontroller mengalamai program hang sama seperti sebuah pc , untuk pc biasanya kita mereset , tapi untuk microcontroller agak sulit jika kita harus yg mereset sendiri kenapa? karena biasanya microcontroller biasanya bekerja pada peralatan 24 jam seperti sistem alarm,ac dll ngga mungkin kita tungguin seharian ya ngga? .untuk mengatasi masalah ini dibuatlah sistem timer yang bisa mereset otomatis jika terjadi program hang ,namanya wacthdog timer ,ia akan mereset program microcontroller secara berkala, misal tiap 5 detik ia akan mereset program microcontroller. lalu bagai mana kalo program tdk hang ? ia tetap akan mereset CPU pada detik ke 5 . jadi biar wacthdog timer tidak mereset cpu ketika keadaan normal kita harus mereset watchdog timer maksimal tiap 4 detik jadi sebelum ia mereset CPU , artinya pada detik ke 4 kita reset wacth dog timer,jadi sebelum watchdog timer mereset cpu pd detik kelima sudah kita reset duluan watcdog timernya pd detik ke 4, perintah mereset wacthdog timer ada didlm program. jadi ketika program kita hang maka tdk ada lagi perintah yg mereset wachtdog timer sehingga WDT akan mereset CPU..

1.8 Pengubah sinyal Analog ke Digital


perlu diingat bahwa microcontroller bekerja pada sinyal digital 1 atau 0 , lalu bagaimana ia membaca sinyal analog , beberapa microcontroller dilengkapi analog digital converter misalnya pada microcontroller mc68hc11 buatan motorola. Tugas adc merubah sinyal analog kedigital sehingga bisa diproses microcontroller.

Kesimpulan
akhirnya lengkap sudah bagian-bagian sebuah microcontroller,dan agar bisa bekerja bagian2 tsb harus disatukan dlm sebuah rangkaian dan kita mengaksesnya melalui kaki2/pin. Gambar dibawah ini menunjukan bagian dalam sebuah microcontroller .

configurasi phisik bagian dalam sebuah microcontroller kawat2 kecil yg menghubungkan bagian dalam microcontroller dan luar/pin2 microntroller disebut kawat bonding . gambar dibawah ini menggambarkan bagian tengah microcontroller gambar diatas.

Bagian bagian sebuah Microcontroller dan koneksi internal antar bagian untuk bisa bekerja microcontroller perlu perintah/instruksi2 yang disimpan dalam memori dan kumpulan perintah/instruksi itu kita sebut program. tanpa program sebuah cpu hanyalah sebuah benda mati yg tak berguna. dibawah ini contoh microcontroller yang akan kita pelajari

beberapa contoh jenis microcontroller Sebagian bagian dari microcontroller (memori,cpu,register dll) kita tdk bisa melihat, karena berada didalam ic microcontroller ,yang bisa kita lihat hanya port input/output (P0,P1,P2,P3) saja serta pin2 pendukung clock(XTAL1 & XTAL2),untuk power suply VCC,GND ,

1.9 Program

Sebuah microcontroller tanpa diprogram tdk ada artinya apa-apa sebelum bisa digunakan dia harus diberi perintah yang berupa program yang disimpan/diisikan (download) ke dalam memorinya ,contoh kita akan "menginstruksikan" microcontroller untuk mentransfer data dari Port0 (P0) ke register A, B dan lokasi memori 20H maka kita akan menuliskan urutan instruksi yg disebut program, menggunakan bahasa asembler sbb :

;transfer data menggunakan MOV

ORG 0 ;awal program di alamat 0 ;data di port 0 di copy ke reg A, B dan memori 20h awal: MOV A,P0 ;pindahkan isi P0 ke reg A MOV B,P0 ;pindahkan isi P0 ke reg B MOV 20H,P0 ;pindahkan isi P0 ke lokasi alamat 20H ; isi P0 di copy ke RAM alamatnya ditunjukan oleh P1 MOV R0,P1 ;pindahkan isi P1 ke reg R0 MOV @R0,P0 ;pindahkan isi P0 ke alamat yg ditunjuk R0 JMP awal ;kembali ke alamat 0 END
tiap baris disebut instruksi contoh ORG 0 , adalah instruksi untuk memulai program di alamat 0 dan yg disebut program adalah keseluruhan instruksi mulai instruksi ORG 0 sampai instruksi END. format standar program adalah sbb: label mnemonic , operand ;keterangan

contoh format label AWAL

mnemonic operand MOV A, P0

keterangan diawali ; ; pindahkan isi p0 ke A

Program dapat dibuat dng beberapa bahasa pemrograman seperti Assembler, C and Basic ,tiap bahasa mempunyai kelebihan dan kekuranganya masingmasing tapi pada tutorial ini kita akan meggunakan bahasa asembler karena instruksi berhubungan langsung dengan register-register pd microcontroller. program bisa kita ketik menggunakan notepad pada windows atau edit.com pada dos dan disimpan dengan extention .asm setelah program selesai kita harus menterjemahkan program yg kita buat agar dimengerti oleh microcontroller dng sebuah sofware compiler.

program contoh diatas yg kita buat misalnya kita simpan dengan nama contoh1.asm ( .asm menyatakan extensi program asembler) Setelah program selesai diketik dan dismpan dengan nama contoh1.asm lalu kita terjemahkan kedalam bahasa mesin dengan program asm51.exe dengan mengetik pada dos promt : C:> asm51.exe contoh1.asm ; lalu tekan enter

maka akan dihasilkan file " contoh1.hex" pada direktori yang sama, file inilah (contoh1.hex) yang akan kita masukan kedalam memori microcontroller dengan menggunakan alat yg disebut programmer (berupa hardware dan software) lihat tutorial microcontroller

programmer isi dari file contoh1.hex adalah sbb :0E000000E5808580F0858020A890A68080F2A3 :00000001FF setelah program(contoh1.hex) dimasukan kedalam microcontroller barulah microcontroller dipasangkan pada rangkaian yang akan dicontrol dan menjalankanya.dengan cara mereset. tentu sebelumnya harus diberi power suply untuk tenaga dan clock sebagai "jantung", berdasarkan tiap clock microcontroller mengeksekusi perintah satu persatu dari instruksi awal sampai instruksi terakhir (biasanya instruksi "end") .

beberapa saat setelah direset atau diberi power suply PC bernilai 0000 dan terus bertambah 1 , microcontroller akan menjalankan instruksi program pd alamat yg ditunjukan oleh PC tiap langkah dipicu/trigger oleh sinyal clock .jadi kecepatan eksekusi sebuah program ditentukan oleh clock xtal yg terpasang.

misal xtal /clock yg kita pakai frekwensinya 4 Mhz atau 1 perioda clock = 1/4000.000 detik = 0.00000025 detik jadi untuk menyelesaikan program diatas = 14 byte instruksi X

0.00000025 detik = 0.0000035 detik

interupsi Saat kaki RESET pada IC mikroprosesor/mikrokontroler menerima sinyal reset ( sinyal tersebut berupa sinyal 1 sesaat, pada prosesor lain umumnya merupakan sinyal 0 sesaat),Program Counter diisi dengan sebuah nilai. Nilai tersebut dinamakan sebagai vektor reset (reset vector), merupakan nomor awal memoriprogram yang menampung program yang harus dijalankan. Pembahasan di atas memberi gambaran bahwa proses reset merupakan peristiwa perangkat keras (sinyal reset diumpankan ke kaki Reset) yang dipakai untuk mengatur kerja dari perangkat lunak, yakni menentukan aliran program prosesor (mengisi Program Counter dengan vektor reset). Program yang dijalankan dengan cara reset, merupakan program utama bagi prosesor. Peristiwa perangkat keras yang dipakai untuk mengatur kerja dari perangkat lunak, tidak hanya terjadi pada proses reset, tapi terjadi pula dalam proses interupsi.

Dalam proses interupsi, terjadinya sesuatu pada perangkat keras tertentu dicatat dalam flip-flop khusus, flip-flop tersebut sering disebut sebagai petanda (flag), catatan dalam petanda tersebut diatur sedemikian rupa sehingga bisa merupakan sinyal permintaan interupsi pada prosesor. Jika permintaan interupsi ini dilayani prosesor, Program Counter akandiisi dengan sebuah nilai. Nilai tersebut dinamakan sebagai vektor interupsi (interrupt vector), yang merupakan nomor awal memori-program yang menampung program yang dipakai untuk melayani permintaan interupsi tersebut. Program yang dijalankan dengan cara interupsi, dinamakan sebagai program layanan interupsi (ISR - Interrupt Service Routine). Saat prosesor menjalankan ISR, pekerjaan yang sedang dikerjakan pada program utama sementara ditinggalkan, selesai menjalankan ISR prosesor kembali menjalankan program utama, seperti yang digambarkan dalam Gambar 1.

Gambar 1 Bagan kerja prosesor melayani interupsi Sebuah prosesor bisa mempunyai beberapa perangkat keras yang merupakan sumber sinyal permintaan interupsi, masing-masing sumber interupsi dilayani dengan ISR berlainan, dengan demikian prosesor mempunyai beberapa vektor interupsi untuk memilih ISR mana yang dipakai melayani permintaan interupsi dari berbagai sumber. Kadang kala sebuahvektor interupsi dipakai oleh lebih dari satu sumber interupsi yang sejenis, dalam hal semacam ini ISR bersangkutan harus menentukan sendiri sumber interupsi mana yang harus dilayani saat itu. contoh interpsi pada kaki XIRQ , yg mempunyai vektor interupsi = FFE4h

Jika pada saat yang sama terjadi lebih dari satu permintaan interupsi, prosesor akan melayani permintaan interupsi tersebut menurut perioritas yang sudah ditentukan, selesai melayani permintaan interupsi perioritas yang lebih tinggi, prosesor melayani permintaan interupsi berikutnya, baru setelah itu kembali mengerjakan program utama. Saat prosesor sedang mengerjakan ISR, bisa jadi terjadi permintaan interupsi lain, jika permintaan interupsi yang datang belakangan ini mempunyai perioritas lebih tinggi, ISRyang sedang dikerjakan ditinggal dulu, prosesor melayani permintaan yang perioritas lebih tinggi, selesai melayani interupsi perioritas tinggi prosesor meneruskan ISR semula, baru setelah itu kembali mengerjakan program utama. Hal ini dikatakan sebagai interupsi bertingkat (nested interrupt), tapi tidak semua prosesor mempunyai kemampuan melayani interupsi secara ini.

You might also like