1 / 21

Pertemuan 4 ( Set Instruksi ARM )

Pertemuan 4 ( Set Instruksi ARM ). ARM - Advanced RISC Machines (ARM) limited telah mendesain suatu famili mikroprosesor dan melisensikan desain tersebut ke perusahaan lain untuk fabrikasi chip yang penggunaannya dalam produk komputer dan sistem uang embedded.

mills
Download Presentation

Pertemuan 4 ( Set Instruksi ARM )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pertemuan 4(Set Instruksi ARM) ARM - Advanced RISC Machines (ARM) limited telahmendesainsuatufamilimikroprosesordanmelisensikandesaintersebutkeperusahaan lain untukfabrikasi chip yang penggunaannyadalamprodukkomputerdansistemuang embedded. - Perusahan ARM yang relatifbaru, merupakanperkembangandariperusahan Acorn Computer yang mengembangkandesainprosesorpadaawaltahun 1980-an. - Penggunaanutamamikroprosesor ARM adalahpadaaplikasi embedded yang berdayarendahdanberbiayarendah, sepertimisalnya mobile telephone, modem komunikasi, sistemmanejemenmesinmobil, dan hand-held Group 4 PTIK 09

  2. 3.1 Register, AksesMemori dan Transfer Data Dalamarsitektur ARM, memoriadalah byte-addressble, menggunakanalamat 32-bit, dan register prosesormemilikipanjang 32-bit. Duapanjang operand digunakandalammemindahkan data antaramemoridan register prosessor : byte (8 bit) dan word (32 bit). Group 4 PTIK 09

  3. 3.1.1 Struktur Register - Register prosesor yang digunakanoleh program aplikasiditampilkanterdapatenambelas register 32 bit berlabel R0 hingga R15 yang terdiridari lima belas general-purpose register (R0 hingga R14) dan register program counter (PC), R15, yang terdiridari 15. - General purpose register dapatmenyimpanalamatmemoriatau operand data. Current progarm status register (CPRS), ataucukupdisebut register status, menyimpan condition code flag (N, Z, C, V), interupt disable flag, dan bit mode prosesor. - Disinikitaakanmengasumsikanbahwprosesordalam mode user dandieksekusisebagai program aplikasi.terdapat 15 general purpose register tambahn yang yangdisebut register banked. Group 4 PTIK 09

  4. 3.1.2 InstruksiAkses Memory Dan Mode Pengalamatan - Eksekusi Conditional Instruksi Fitur yang membedakandanagaktidakbiasadariprosesor ARM adalahsemuainstruksinyadieksekusisecara conditional, tergantungpadakondisi yang ditetapkanpadainstruksitersebut. Instruksitersebutdieksekusihanyajikakeadaansaatinidari conditional code flag prosesormemenuhikondisi yang ditetapkandalam bit b31-28 dariinstruksitersebut. Jikatidakprosesormelanjutkankeinstruksiberikutnyasalahsatukondisitersebutdigunakanuntukmengindikasikanbahwainstruksitersebutselaludieksekusi Group 4 PTIK 09

  5. - Mode PengalamatanMemori • Metodedasaruntukmengalamati operand memoriadalahmembangkitkan effective address, EA, darioperantersebutdenganmenambahkan offset bertandakeisi base register Rn, yang ditentukandalaminstruksi. Besarnya offset tersebutdapatberupanilai immediate yang terdapatdalam 12 bit low order instruksiatauisidari register ketiga, Rm, yang dinamaidengan 4 bit low order tandaarah offset terdapatdalam field OP-code. Group 4 PTIK 09

  6. - OPERAND LOAD/STORE MULTIPLE Selaininstruksi load dan store untuk operand tunggal, terdapat 2 instruksiuntuk me-load danmenyimpanbanyak operand. Instruksiitudisebutinstruksi transfer block. Sub set apapundari general purpose register load ataudisimpan. Hanya operand word yang diperbolehkan, dan OP code yang digunakandalam load multiple dan store multiple. Operand memoriharusberadadalamlokasi word yang berurutan. Group 4 PTIK 09

  7. 3.1.3 Instruksi Move Register Acap kali kitaperlumeng-copy isisatu register ke register lain atauuntuk me-load nilai immediate kesuatu register. Instruksi move MOV Rd , Rm Group 4 PTIK 09

  8. 3.2 InstruksiAritmatika Dan Logika Set instruksi ARM memilikisejumlahinstruksiuntuk operand aritmatikadanlogikapada operand yang beradadalam general-purpose register ataudinyatakansebagai operand immediate dalaminstruksiitusendiri. Terdapatinstruksiuntuk operand logika AND,OR,NOT,XOR, dan bit-clear. Instruksiseperti compare disediakanuntuk men-set condition code flag berdasarkanhasildarioperasiaritmatikadanlogikapadadua operand Group 4 PTIK 09

  9. 3.2.1 InstruksiAritmatika Ekspresibahasa assembly dasaruntukinstruksiaritmatikaadalah Opcode Rd, Rn, Rm Dimanaoperasi yang ditetapkanoleh OP code dilakukanmenggunakan operand dalam general-purpose register Rndan Rm. Hasilnyadiletakkandalam register Rd. Misalnya, instruksi ADD R0, R2, R4 Menjalankanoperasi R0  [R2] + [R4] Dan instruksi SUB R0, R6, R5 Menjalankanoperasi R0  [R6] – [R5] Group 4 PTIK 09

  10. 3.2.2 InstruksiLogika Operasilogika AND, OR, XOR, dan Bit-clear diimplementasikanolehinstruksi OP code AND, ORR, EOR, dan BIC. Kodetersebutmemiliki format yang samadenganinstruksiaritmatika. Instruksi AND Rd, Rn, Rm Menjalankanoperasi Rd  [Rn] ^ [Rm] Yang merupakan bitwise logical AND antara operand dalam register Rndan Rm. Misalnya, jika register R0 berisipolahexadesimal 02FA62CA dan R1 berisipola 0000FFFF, makainstruksi AND R0, RO, R1 Akanmenyebabkanpola 000062CA diletakkandalam register R0. Group 4 PTIK 09

  11. 3.3 Instruksi Branch Instruksi branch CONDITIONAL berisi offset 24-bit, 2’-complement, bertanda yang ditambahkankeisiter-update Program Counter untukmenghasilkanalamat target branch. Instruksi Branch dieksekusidengancara yang samasepertiinstruksi ARM yang lain, yaitudieksekusihanyajikakeadaanterbaru condition code flag berhubungandengankondisiditetapkandalam field coditioninstruksitersebut. Group 4 PTIK 09

  12. 3.3.1 Setting Condition Code beberapainstruksi, seperti compare, dinyatakansebagaiberikut CMP Rn, Rm Yang menjalankanoperasi [Rn] – [Rm] Memilikitujuanutamauntuk men-set condition code flag berdasarpadahasiloperasipengurangan. Group 4 PTIK 09

  13. 3.3.2 Program Loop untuk penambahan bilangan Operasi load dan store dilakukanolehinstruksipertama, kedua, danterakhir yang digunakanoleh mode pengalamatan relative. Inimengasumsikanbahwalokasimemori N, pointer, dan SUM terdapatdalamrentang yang terjangkauoleh offset relatifterhadap PC. Lokasimemori pointer berisialamat NUM 1 daribilanganpertama yang akanditambahkan, N berisijumlahentrididalam list dan SUM digunakanuntukmenyimpanjumlahtersebut Group 4 PTIK 09

  14. 3.4 Bahasa Assembly Bahasa assembly ARM memiliki assembler directive untukmenyiapkanruangpenyimpanan, menetapkannilainumerikke label alamatdarisimbolkonstanta, menentukandimana program danblok data akanditempatkandalammemori, menetapkanakhirteks source program fasilitastersebutdidekskripsikansecaraumum. Group 4 PTIK 09

  15. 3.5 KontrolAliran Program - Condition Code Flag 68000 memiliki lima condition code flag, disimpandalam register status. Selain flag M,Z,V, dan C yang dideskripsikanpadabagian 2.4.6, 6800 memiliki lima flag, X (extend). Di-set dengancara yang samadengan flag C, tetapitidakdipengaruhiolehbanyakinstruksi. - Instruksi Branch Instruksi conditional branch menyebabkaneksekusi program berlanjutdenganinstruksipadaalamat target branch jikakondisi branch dipenuhi. Group 4 PTIK 09

  16. 3.6 Operasi I/O Prosessor 68000 mensyaratkansemua status dan buffer data dalamantarmukaperangkat I/O menjadi addressable sepertilokasimemori. Iniberarti program-program I/O dalamkomputer 68000 dapatdicapai. Group 4 PTIK 09

  17. 3.7 Stack dan Subroutine Suatu stack dapatdiimplementasikan, menggunakan register alamatapapunsebagai pointer. Mode pengalamatanAutoincrementdanAutodecrementmemfasilitasiprosesini. Satu register spesifik, register A7, ditunjuksebagai pointer stack prosesor, dan stack yang ditunjuk register inidisebut stack prosesor. Iniadalah stack yang digunakandalamsemuaoperasi stack yang dilakukanprosesorsecaraotomatis, sebagaimanadalamkasus linkage subroutine. Group 4 PTIK 09

  18. 3.8 InstruksiLogika Operand yang terlibatdalaminstruksiinimemilikipanjangtetap 32, 16, atau 8 bit. Padabeberapaaplikasiperluuntukmemanipulasi: ukuran data yang lain, mungkinhanya bit individu, danmelakukanoperasilogikapada data ini. Group 4 PTIK 09

  19. 3.9 Register danPengalamatan Dalamarsitektur 1A-32, memoriadalah byte addressable menggunakanalamat 32-bit, daninstruksiberoperasipada operand data 8 dan 32 bit. Ukuran operand inidisebut byte dandoubleworddalamistilahintel. Group 4 PTIK 09

  20. 3.9.1 Struktur Register 1A-32 Terdapatdelapan floating-point register untukmenyimpan operand data floating point doublewordatauquadword (64 bit). Floating-point register yang memiliki field ekstensiuntukmenyediakanpanjang total 80 bit. Arsitektur 1A-32 berbasispada model memori yang menghubungkan area yang berbedadidalammemori, yang disebutsegmendengankegunaan yang berbeda. Group 4 PTIK 09

  21. 3.9.2 Mode Pengalamatan 1A-32 • Arsitektur 1A-32 memiliki set mode pengalamatan yang besardanfleksibel. Mode tersebutdidesainuntukmengakses item data individuatau item data yang merupakanaggotadari list yang berurutan yang mulaipadaalamatmemoritertentu. • Mode dasar, yang tersediapadakebanyakanprosesortelahdideskripsikan. Mode tersebutadalah : Immediate, Absolute, Register, dan Register indirect. Group 4 PTIK 09

More Related