Rangkuman materi Mikroprosesor dari awal hingga akhir

PENGENALAN MICROPROCESSOR
Mikroprosesor adalah sebuah chip (IC=Integrated Circuits) yang di dalamnya terkandung rangkaian ALU (Arithmetic-Logic Unit), rangkaian CU (Control Unit) dan register-register. Mikroprosesor disebut juga dengan CPU (Central Processing Unit). yang digunakan sebagai otak/pengolah utama dalam sebuah sistem komputer. Mengatur kerja sistem berdasarkan urutan program yang telah ditetapkan.  Mengatur keluar masuknya data dari dan ke antar bagian dalam sistem. Mengatur aktivitas keluar atau masuk data dari dan ke perangat diluar sistem.
Bagian terpenting dari prosesor terbagi menjadi 3 yaitu :
  1. Aritcmatics Logical Unit (ALU), adalah alat yang melakukan pelaksanaan dasar seperti pelaksanaan aritmatika (tambahan, pengurangan, dan semacamnya), pelaksanaan logis (AND, OR, NOT), dan pelaksanaan perbandingan (misalnya, membandingkan isi sebanyak dua slot untuk kesetaraan). Pada unit inilah dilakukan “kerja” yang nyata;
  2. Control Unit (CU), merupakan suatu alat pengontrolan yang berada dalam komputer yang memberitahukan unit masukan mengenai jenis data, waktu pemasukan, dan tempat penyimpanan didalam primary storage. Control unit juga bertugas memberitahukan kepada arithmatic logic unit mengenai operasi yang harus dilakukan, tempat data diperoleh, dan letak hasil ditempatkan Perangkat-perangkat alat proses bersertaperlengkapan;
  3. Memory Unit (MU), merupakan bagian dari processor yang menyimpan alamat-alamat register data yang diolah oleh ALU dan CU.
JENIS-JENIS MICROPROCESSOR
MIKROPROSESOR 4 BIT
1. Intel 4004 Merupakan mikroprosesor 4 bit pertama dari keluarga Intel
2. Hanya mengalamatkan 4096 lokasi memori 4 bit.
3. Memiliki 45 set instruksi
4. Kecepatan 50 KIPs (Kilo Instructions per second)
5. Dibuat dengan teknologi P-channel MOSFET.
6. Digunakan untuk video games, sistem kontrol kecil berbasiskan mikroprosesor serta kalkulator.
MIKROPROSESOR 8  BIT
Menyadari bahwa mikroprosesor merupakan produk berkembang yang memiliki nilai komersial, maka Intel mengembangkan mikroprosesornya untuk versi 8 bit, yaitu :
1. Intel 8008 (tahun 1971)
2. Intel 8080 (tahun 1973)
3. Intel 8085 (tahun 1977)
MIKROPROSESOR 16 BIT
Mikroprosesor 16 bit berkembang akibat kebutuhan memori yang lebih besar.
Berikut ini adalah mikroprosesor 16 bit dari keluarga Intel :
1. Intel 8086 (tahun 1978)
2. Intel 8088 (tahun 1979)
3. Intel 80286 (tahun 1983)
*Ketenaraan keluarga Intel melambung pada tahun 1981, ketika IBM menggunakan 8088 dalan komputer pribadinya.
MIKROPROSESOR 32 BIT
Perkembangan software aplikasi mulai memerlukan kecepatan mikroprosesor yang lebih tinggi. Untuk itu, Intel mengembangkan
lagi mikroprosesor 32 bit, yaitu :
1. Intel 80386 (tahun 1986)
80386 adalah mikroprosesor fungsional 32 bit pertama Intel yang mengandung data bus 32 bit dan alamat memori 32 bit.
Melalui bus alamat 32 bit ini, 80386 mampu meng-alamati memori sebesar 4 MByte (232=230x 22=4G, 1 Giga = 230)
2. Intel 80486 (tahun 1989)
Intel 80486 merupakan gabungan dari 80386 sebagai mikroprosesor dan 80387 sebagai numeric coprocessor serta 8  KByte cache memory system dalam satu paket terpadu.
MIKROPROSESOR 64 BIT
Pada tahun 1993, Intel meluncurkan prosesor 64 bit yang diberi label P5 atau 80586. Namun Intel memutuskan untuk tidak menggunakan label nomor karena sulit untuk memetakan angka yang terlalu banyak, sehingga Intel mengganti nama prosesornya dengan Pentium. Pentium memiliki teknologi superscalar, yaitu memiliki dua prosesor integer internal bebas sehingga dapat mengeksekusi dua instruksi, yang tidak saling tergantung, secara simultan.
ARSITEKTUR MICROPROCESSOR
  1. Arsitektur Microprocessor 8085
Microprocessor Intel 8085 merupakan microprocessor kelanjutan dari microprocessor 8080A. microprocessor ini memerlukan tenaga sekitar 5 volt. Microprocessor 8085 dibuat berdasarkan teknologi NMOS dan berganti versi menjadi HMOS.
Microprocessor 8085 mempunyai 10 buah register program. 6 buah register disusun membentuk 6 buah register 8 bit atau 3 buah register 16-bit.
  1. Saluran Data, Alamat dan Kendali
Saluran Data terdiri dari 8-bit dimana saluran ini dibedakan atas saluran internal yaitu saluran yang terdapat didalam CPU dan saluran eksternal yang dihubungkan ke serpih-serpih pendukung lainnya seperti memori, peralatan I/O, dan sebagainya. Saluran ini berfungsi untuk mentrasfer data baik yang dikeluarkan maupun yang masuk ke Mikroprosesor (bi-direktional).
Saluran-saluran kendali eksternal yang terdiri dari RD, WR, ALE, SO, SI, IO/M , HLDA, Reset In, Reset Out. Saluran-saluran ini masing-masing satu jalur, yang berfungsi untuk mengendalikan peralatan memori, input-output dan juga merupakan saluran untuk mengendalikan kerja Mikroprosesor.
Saluran alamat terdiri dari 16-bit yang dibagi atas dua bagian yaitu AD0-AD7 yang merupakan saluran alamat byte rendah dan sekaligus saluran data, serta A8-A15 yang merupakan saluran alamat byte tinggi. Alamat rendah dimultipleksagar dapat berfungsi sebagai saluran alamat dan juga saluran data dimana keadaan ini dikendalikan oleh ALE. Saluran alamat terdiri dari 16-bit sehingga jangkauan alamat memori adalah sebesar 216 atau 65.536 lokasi alamat. Saluran data terdiri dari 8-bit, yang bearti CPU menerima, mengirim dan mengolah data sebanyak 8-bit secara serentak.
  • Pengendali dan Pewaktu (Timing and Control Unit)
Unit ini terdiri dari sebuah osilator dan sebuah pengendali pengurut. Osilator menghasilkan sinyal detak (clock) yang berfungsi untuk men-sinkronkan kerja CPU dengan register atau memori. Unit ini juga menghasilkan clokc untuk perangkat pendukung yaitu Clokc Out.
Pengendali–pengurut juga menghasilkan sinyal kendali yang diperlukan untuk pengendali internal maupun eksternal. Operasi pengedali-pengurut ini diatur oleh program-mikro yang terdapat dalam sebuah ROM/EPROM. ROM ini berisikan semua program-mikro yang diperlukan dalam eksekusi instruksi. Selama instruksi-mikro dibaca dari ROM kendali, sinyal-sinyal kendali disalurkan kepada bus-bus data internal dan eksternal. Efek yang ditimbulkannya adalah memindahkan data antar register, melaksanakan operasi aritmatik-logik, memasukkan atau mengeluarkan data dan sebagainya tergantung instruksi yang diberikan.
  • Unit Operasi Aritmatik dan Logika (ALU)
Sebagai operasi aritmatik dan logika dilakukan di dalam ALU. Operasi-operasi yang dapat dilakukan ALU adalah:
  1. Penjumlahan (Add), Penambahan satu (Increment)
  2. Pengurangan (Subtract), Pengurangan satu (Decrement)
  3. Logika OR, EX-OR, AND, dan NOT (Complement)
  4. Perbandingan (Compare)
  5. Pergeseran ke kiri atau ke kanan satu bit (Shift)
  6. Berputar ke kiri atau ke kanan (Rotate).
  • Register Mikroprosessor 8085.
Seperti yang telah disebutkan sebelumnya, Mikroprosessor 8085 mempunyai 10 buah register dimana register-register ini dibagi atas dua kelompok, yaitu :
  1. General Purpose Register (Register Serba Guna)
Dikatakan serba guna kerena pemakaian register ini bersifat umum. Susunan dari register-register ini seperti sebuah RAM kecil (8-bit atau 16-bit) di dalam CPU. Register ini dapat digunakan sebagai tempat penyalinan data sementara atau sebagai tempat penyimpanan hasil operasi mikroprosesor. Register serba guna ini terdiri dari 6 buah register 8-bit yang disebut dengan register B, C, D, E, H, dan L. Untuk pengoperasian 16-bit register ini dapat berpasangan menjadi pasangan register BC, DE, HL.
  • Special Purpose Register (Register Khusus).
Dikatakan khusus karena fungsinya secara khusus. Register khusus ini terdiri atas 4 bagian yaitu : Akumulator, Register Bendera, Program Counter (PC), Stack Pointer (SP).
  1. Akumulator (Accumulator)
Akumulator disebut juga dengan Register A yang merupakan register yang amat penting, kerena register ini berfungsi sebagai tempat penyimpanan hasil setiap operasi aritmatik-logik dan juga sebagai tempat masukan untuk ALU. Data bus internal yang dihubungkan ke ACC ini merupakan dua arah (bidirectional) yang bearti akumulator ini berpasangan dengan register Bendera (Flag).
  • Register Bendera (Flag Register, F)
Register Bendera berfungsi sebagai indikator atau menyatakan keadaan dari hasil operasi ALU. Register ini terdiri dari 8-bit tetapi hanya 5-bit yang dipakai yaitu: Zero (Z), Sign (S), Parity (P), Carry (Cy) dan Auxilary Carry (AC). Susunan bit daru Register Bendera digambarkan sebagai berikut:
x = tidak dipakai
Isi Register Bendera akan berubah sesuai dengan hasil operasi aritmatik-logika.
  • Sign Bit (S) : S = 0 ; bila hasilnya positif, S = 1 ; bila hasilnya negative.
  • Zero Bit (Z) : Z = 1 ; bila hasilnya sama dengan 0. Z = 0 ; bila hasilnya tidak sama dengan 0.
  • Auxilary Carry Bit (AC) : AC = 1; Jika terjadi carry dari 4 bit rendah (low nibble) ke 4 bit tinggi (high-nibble) dan jika ada borrow dari high nible ke low nible. AC = 0; Jika sebaliknya.
  • Parity Bit (P) : P = 1; bila hasil operasi berparity genap. P = 0; bila hasil operasi berparity ganjil.
  • Carry Bit (AC) : Cy = 1; bila hasil penjumlahan melebihi 8-bit. bila hasil pengurangan ada borrow. Cy = 0; bila tidak terjadi borrow atau carry.
  • Program Counter (PC)
Pengeksekusian suatu program adalah pelaksanaan instruksi demi instruksi, dimana instruksi ini telah terlebih dahulu disimpan di dalam memori. Jadi untuk melaksanakan instruksi tersebut dibutuhkan suatu alamat yang menunjukkan lokasi penyimpanan instruksi tersebut di dalam memori. Alamat lokasi memori yang akan dituju ini diambil dari program counter. Program Counter ini merupakan register 16-bit, dengan demikian jangkauan alamatnya adalah 216 = 64 kByte.
  • Stack Pointer
Stack merupakan bagian dari memori yang dialokasikan untuk menyimpan data dan alamat, misalnya saat instruksi PUSH atau CALL. Alamat awal dari stack ini ditandai oleh Stack Pointer. Stack dapat diakses dengan menggunakan program. Penumpukan data pada Stack ini mempunyai sifat LIFO (Last In – First Out). Pemindahan data dari register CPU ke Stack dapat dilaksanakan dengan instruksi PUSH dan yang sebaliknya adalah POP. Stack Pointer (SP) merupakan register 16-bit dengan demikian jangkauan alamat adalah sebesar 216 = 64 kByte.
  • Pengendalian Interupsi (Interrupt Control)
Mikroprosessor 8085 mempunyai 5 (lima) masukan untuk permintaan interupsi hardware yaitu : TRAP, RST, 7.5, RST 6.5, RST 5.5 dan INTR, dimana setiap interupsi ini mempunyai peringkat prioritas. Jika ada sinyal interupsi maka CPU akan mengeluarkan sinyal INTAL yang merupakan pemberitahuan bahwa interupsi tersebut dikenali dan kemudian CPU akan mengerjakan program dimana alamatnya sesuai dengan alamat vektor interupsi tersebut. Urutan prioritas dan alamat program yang akan dikerjakan CPU ditunjukkan pada tabel 1. Semua pengendali interupsi hardware dilaksanakan oleh unit kendali interupsi ini.
Interupsi TRAP merupakan interupsi Non-maskabel yaitu interupsi yang tidak dapat dihalangi sedangkan interupsi RST 7.5, RST 6.5, RST 5.5 merupakan interupsi maskabel yaitu interupsi yang dapat dihalangi.
  • Arsitektur Microprocessor 8086
Mikroprosesor 8086 ialah mikroprosesor dengan lebar bus data sebesar 16 bit secara internal dan eksternal, maksudnya seluruh register lebarnya 16 bit dan terdapat bus data selebar 16 bit untuk mentrasfer data kedalam dan keluar CPU.
Dipasarkan sebagai sumber kompatibel , 8086 dirancang untuk memungkinkan bahasa assembly untuk 8008,, 8080 atau 8085 secara otomatis dikonversi menjadi setara (sub-optimal) kode sumber 8086, dengan sedikit atau tanpa tangan-editing. Model pemrograman dan set instruksi adalah (longgar) berdasarkan pada 8080 dalam rangka untuk membuat ini mungkin. Namun, desain 8086 ini diperluas untuk mendukung penuh 16-bit pemrosesan, bukan 16-bit cukup kemampuan dasar dari 8080/8085.
  1. Bus Interface Unit (BIU)
BIU menyediakan fungsi-fungsi perangkat keras, termasuk pembangkitan memori dan alamat I/O untuk transfer data. BIU berfungsi mengirim kode-kode alamat keluar, mengambil instruksi dari memori serta membaca data dari port dan memori.
  1. Bus Interface Unit (BIU) : Register Antrian
Pada saat EU mendekode atau melaksanakan suatu instruksi, ia tidak perlu menggunakan bus sehingga dapat digunakan oleh BIU untuk mengambil 6 byte instruksi sebagai instruksi berikutnya yang akan dilaksanakan.Instruksi-instruksi tersebut dinamakan prefetched instruction dan oleh BIU disimpan dalam register FIFO (First-In First-Out) yang juga disebut register antrian.Ketika EU siap melaksanakan instruksi berikutnya, ia dengan mudah membaca instruksi-instruksi dari register antrian dalam BIU. Jadi, ketika EU sedang melaksanakan suatu instruksi, bus dapat digunakan oleh BIU untuk menulis dan membaca memori serta mengambil instruksi berikutnya. Teknologi yang memungkinkan pengambilan instruksi berikutnya sambil melaksanakan instruksi yang ada dinamakan pipelining.
  • Bus Interface Unit (BIU) : Register Segmen
8086 mampu mengalamati 220 lokasi memori, sedangkan panjang register IP yang dimilikinya hanya 16-bit. Untuk memperoleh 20-bit sinyal alamat, 8086 menggunakan bantuan register segmen. Gabungan antara register segmen 16-bit dan IP 16-bit akan menghasilkan 20-bit sinyal alamat. 8086 memiliki 4 buah register segmen yakni CS (Code Segment), SS (Stack Segment), ES (Extra Segment) dan DS (Data Segment).
Jika suatu register segmen berisi kode misalnya CS berisi 348A, maka CS dianggap memiliki alamat awal 348A0. BIU secara otomatis akan menambahkan angka 0 di belakang isi segmen. Setiap segmen menempati 64 Kbyte memori dan dapat ditempatkan di mana saja di dalam ruang alamat 1 Mbyte.
  • Execution Unit (EU)
EU menerima kode-kode instruksi program dan data dari BIU mengeksekusi instruksi tersebut, dan menyimpan hasil pada register umum. Dengan melewatkan data kembali ke BIU, data dapat disimpan di sebuah lokasi memori atau ditulis ke peralatan output. Sebagai catatan, EU tidak mempunyai koneksi dengan bus-bus system, namun menerima dan mengeluarkan seluruh data melalui BIU. EU mengandung rangkaian-rangkaian kontrol yang berfungsi mengarahkan operasi-operasi internal. Dekoder pada EU menerjemahkan instruksi-instruksi yang telah diambil dari memori ke dalam urutan aksi. EU memiliki ALU 16-bit dan dapat melakukan penjumlahan, pengurangan, AND, OR, XOR, increment, decrement, complement atau shift bilangan biner.
  1. Execution Unit (EU) : Flag Register
8086 memiliki register bendera dengan panjang 16-bit. Dari 16-bit itu terdapat 9 bendera yang aktif. Dari 9 bendera yang aktif, 6 bendera di antaranya (bendera kondisi) digunakan untuk menunjukkan kondisi-kondisi yang dihasilkan oleh pelaksanaan instruksi yakni bendera CF (Carry Flag), PF (Parity Flag), AF (Auxilary Carry Flag), ZF(Zero Flag), SF (Sign Flag), OF (Overflow Flag).Sedangkan 3 bendera lainnya (bendera kontrol) digunakan untuk mengendalikan beberapa operasi prosesor. Bendera-bendera kontrol ini berbeda dengan 6 bendera kondisi dalam hal cara set dan reset-nya. Keenam bendera kondisi diset dan direset oleh EU, berdasarkan hasil operasi-operasi aritmatika atau logika, sedangkan 3 bendera kontrol diset dan direset oleh instruksi-instruksi khusus yang ada pada program. Bendera itu adalah TF (Trap Flag), IF (Interrupt Flag) dan DF (Direction Flag).
Bendera paritas (Parity Flag) akan diset (PF=1), jika pelaksanaan perintah oleh ALU menghasilkan jumlah bit 1 genap dan reset (PF=0) jika jumlah bit 1 ganjil. Bendera Zero akan diset (ZF=1), jika operasi ALU memberikan hasil 0. Bendera Sign akan diset (SF=1), jika pelaksanaan perintah oleh ALU menghasilkan bilangan negatif. Bendera OF (Overflow Flag) akan diset (OF=1), jika terjadi overflow yakni jumlah bit hasil operasi lebih besar dari lebar akumulator. Bendera TF (Trap Flag) digunakan pada mode operasi langkah tunggal (single step atau trace). Jika bendera ini diset, maka pelaksanaan instruksi akan dilakukan langkah demi langkah. Bendera IF digunakan untuk mengijinkan interupsi dari program. Bendera DF digunakan pada operasi string.
  • Execution Unit (EU): Register Serbaguna (General Purpose Registers)
8086 memiliki 8 buah register serbaguna yakni: AH, AL, BH, BL, CH, CL, DH, DL. Khusus untuk AL dinamakan pula AKUMULATOR. Jika register-register tersebut akan digunakan sebagai register 16-bit, maka pasangan AH dan AL membentuk AX, BH dan BL membentuk BX, CH dan CL membentuk CX serta DH dan DL membentuk DX.AX merupakan akumulator, sering digunakan untuk menyimpan hasil sementara setelah operasi aritmatika dan logika. BX sering digunakan sebagai register base untuk menyimpan address base data yang terletak di dalam memori dan juga address base tabel data. CXdapat digunakan sebagai register count. DX dapat digunakan sebagai register data.
8086 merupakan mikroprosesor 16-bit, artinya bagian ALU, register internalnya, dan sebagian besar instruksi-instruksinya dirancang untuk bekerja pada data 16-bit. 8086 memiliki bus data 16-bit, jadi ia dapat membaca data dari atau menyimpan data ke memori dan port-port yang ada dalam format 16-bit atau 8-bit . 8086 memiliki bus alamat 20-bit, sehingga ia dapat mengalamati 220 atau 1.048.576 lokasi memori atau 1 MB memori, sedangkan register PC atau IP (instruction pointer) yang dimilikinya panjangnya 16-bit. Hal inilahyang merupakan keunggulan dari 8086.
Prosesor lain yang sejenis dengan 8086 adalah 8088. 8088 memiliki ALU, register, dan set instruksi yang sama dengan 8086. 8088 juga memiliki bus alamat 20-bit, jadi ia juga bisa mengalamati memori 1 MB.
Perbedaan 8088 dan 8086, 8088 memiliki bus data 8-bit, sedangkan 8086 lebar bus datanya 16-bit. 8088 hanya dapat membaca dari atau menulisi data ke memori dan port-port dengan panjang 8-bit. Untuk membaca word 16-bit dari dua lokasi memori, 8088 selalu mengerjakan dengan dua operasi baca. 8088 pada awalnya digunakan sebagai CPU pada The Original IBM Personal Computer.
Prosesor 8086 terbagi menjadi 2 bagian fungsional yang independen, yakni BIU (bus interface unit) dan EU (execution unit). BIU bertugas mengirim kode-kode alamat keluar, mengambil instruksi dari memori, dan membaca data dari port dan memori. BIU menangani semua  trnasfer data dan alamat pada bus untuk membantu EU. EU meminta BIU untuk mengambilkan instruksi dan data dari memori, mendekode dan melaksanakan instruksi.
MODE PENGELAMATAN
  1. Immediate Addressing (Pengalamatan Segera)
Adalah bentuk pengalamatan yang paling sederhana.
Penjelasan :
  • Operand benar-benar ada dalam instruksi atau bagian dari intsruksi
  • Operand sama dengan field alamat
  • Umumnya bilangan akan disimpan dalam bentuk complement dua
  • Bit paling kiri sebagai bit tanda
  • Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga maksimum word data
Keuntungan :
  • Tidak adanya referensi memori selain dari instruksi yang diperlukan untuk memperoleh operand
  • Menghemat siklus instruksi sehingga proses keseluruhanakan akan cepat
Kekurangan :
  • Ukuran bilangan dibatasi oleh ukuran field
Contoh :
ADD 7 ; tambahkan 7 pada akumulator
  • Direct Addressing (Pengalamatan Langsung)
Penjelasan :
  • Teknik ini banyak digunakan pada komputer lama dan komputer kecil
  • Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus
Kelebihan :
  • Field alamat berisi efektif address sebuah operand
Kekurangan :
  • Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan panjang word
Contoh :
ADD A ; tambahkan isi pada lokasi alamat A ke akumulator
  • Indirect Addressing (Pengalamatan tak langsung)
Penjelasan :
  • Merupakan mode pengalamatan tak langsung
  • Field alamat mengacu pada alamat word di alamat memori, yang pada gilirannya akan berisi alamat operand yang panjang
Kelebihan :
  • Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi
Kekurangan :
  • Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses operasi
Contoh :
ADD (A) ; tambahkan isi memori yang ditunjuk oleh isi alamat A ke akumulator
  • Register addressing (Pengalamatan Register)
Penjelasan :
  • Metode pengalamatan register mirip dengan mode pengalamatan langsung
  • Perbedaanya terletak pada field alamat yang mengacu pada register, bukan pada memori utama
  • Field yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi 8 atau 16 register general purpose
Keuntungan :
  • Diperlukan field alamat berukuran kecil dalam instruksi dan tidak diperlukan referensi memori
  • Akses ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi akan lebih cepat
Kerugian :
  • Ruang alamat menjadi terbatas          
Contoh :
  • Register indirect addressing (Pengalamatan tak-langsung register)
Penjelasan :
  • Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak langsung
  • Perbedaannya adalah field alamat mengacu pada alamat register
  • Letak operand berada pada memori yang dituju oleh isi register
  • Keuntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan pengalamatan tidak langsung
  • Keterbatasan field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga alamat yang dapat direferensi makin banyak
  • Dalam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada mode pengalamatan tidak langsung
Contoh :
  • Displacement addressing
Penjelasan :
  • Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung
  • Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit
  • Operand berada pada alamat A ditambahkan isi register
  • Tiga model displacement
  • Relative addressing : register yang direferensi secara implisit adalah Program Counter (PC)
  • Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field alamat
  • Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operand berikutnya
  • Base register addressing : register yang direferensi berisi sebuah alamat memori dan field alamat berisi perpindahan dari alamat itu
  • Referensi register dapat eksplisit maupun implisit
  • Memanfaatkan konsep lokalitas memori
  • Indexing  : field alamat mereferensi alamat memori utama, dan register yang direferensikan berisi pemindahan positif dari alamat tersebut
  • Merupakan kebalikan dari mode base register
  • Field alamat dianggap sebagai alamat memori dalam indexing
  • Manfaat penting dari indexing adalah untuk eksekusi program-pprogram iteratif
Contoh :
Field eksplisit bernilai A dan field imlisit mengarah pada register
  • Stack addressing
Penjelasan :
  • Stack adalah array lokasi yang linier = pushdown list = last-in-firs-out
  • Stack merupakan blok lokasi yang terbaik
  • Btir ditambahkan ke puncak stack sehingga setiap blok akan terisi secara parsial
  • Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian paling atas stack
  • Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack pointer mereferensi ke elemen ketiga stack
  • Stack pointer tetap berada dalam register
  • Dengan demikian, referensi-referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung
MEMORI
  1. Jenis – jenis RAM (Random Access Memory)
  2. DRAM (Dynamic RAM)
adalah jenis RAM harus sering di refresh oleh CPU agar data yang terkandung didalamnya tidak hilang.
  • SDRAM (Synchronous Dynamic RAM)
adalah jenis RAM yang paling umum digunakan pada PC masa sekarang. RAM ini disinkronisasi oleh clock sistem dan memiliki kecepatan lebih tanggi dari pada DRAM serta dapat digunakan teritama dalam cache.
  • SRAM (Statik RAM)
adalah jenis memory yang tidak perlu penyegaran oleh CPU agar data yang terdapat didalamnya tetap tersimpan dengan baik.
  • RDRAM (Rambus DRAM)
adalah pada jenis memory ini yang lebih cepat dan lebih mahal dari pada SDRAM. Memory ini bisa digunakan pada sistem yang menggunakan Pentium 4.
  • FPM DRAM (First Page Mode DRAM)
adalah merupakan bentuk asli dari DRAM. Laju transfer maksimum untuk cache L2 mendekati 176 MB per sekon.
  • EDO DRAM (Extended Data Out DRAM)
adalah memory ini sekitar 5% lebih cepat dibandingkan dengan FPM. Laju transfer maksimum untuk cache L2 mendekati 264 MB per sekon.
  • Flash RAM
adalah jenis memory berkapasitas rendah yang digunakan pada perngkat elektronika seperti, TV, VCR, radio mobil, dan lainnya. Memerlukan refresh dengan daya yang sangat kecil.
  • Jenis – jenis ROM (Read Only Memory)
  • PROM (Programmable ROM)
Sifatnya non-voletile dan hanya bisa ditulis saja. Pada PROM, proses penulisan dibentuk secara elektris.
  • EPROM (Erasable Programmeble ROM)
Menyediakan fleksibelitas selama fase pengembangan system digital. Karena EPROM mampu mempertahankan informasi tersimpan untuk waktu yang lama, maka dapat digunakan untuk mengganti ROM pada saat software dikembangkan. EPROM dihapus dengan sinar UV.
  • EEPROM (Electrically Erasable ROM)
Memori ini merupakan ROM yang dapat ditulis kapan saja tanpa menghapus isi sebelumnya, hanya byte-byte yang beralamat yang akan di-update. Operasi write akan memerlukan waktu yang lebih lama dibandingkan operasi read, dalam penghapusan data yang ada di  EEPROM diperlukan tegangan yang berbeda untuk penghapusan, penulisan, dan pembacaan data yang tersimpan.

Related Posts:

0 Response to "Rangkuman materi Mikroprosesor dari awal hingga akhir"

Posting Komentar