Bagaimana prinsip kerja dan fungsi komponen sistem Arsitektur mikroprosesor Z80

Full PDF PackageDownload Full PDF Package

This Paper

A short summary of this paper

36 Full PDFs related to this paper

Download

PDF Pack

ARSITEKTUR MIKROPROSESOR Z80 Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Pada bab ini akan dibahas tentang tujuan perkuliahan, arsitektur mikroprosesor Z80 dengan diagram blok, cara kerja, dan fungsi-fungsi registe, sistem interupsi, mode penglamatan pada mikroprosesor. Mikroprosesor ini termasuk mikroprosesor yang tergolong absolute, tetapi untuk pemahaman dasar cukup baik dan masih banyak dipergunakan sebagai trainer mikroprosesor di sekolah sekolah menengah kejuruan dan universitas sebagai pengenalan dasar tentang mikroprosesor. Tujuan perkuliahan Setelah mempelajari bab ini, diharapkan mahasiswa mampu untuk: 1. Memahami arsitektur setiap mikroprosesor. 2. Menjelaskan cara kerja mikroprosesor berdasarkan diagram blok. 3. Menjelaskan fungsi-fungsi register yang terdapat pada setiap mikroprosesor. 4. Memahami mode pengalamatan dari mikroprosesor. 5. Memahami sistem interupsi yang digunakan pada mikroprosesor. 1. Cara Kerja Mikroprosesor Mikroprosesor dapat mengerjakan data 8/16/32/64 bit. Kemampuan ini akan tergantung pada lebar jalur data (data bus), sedangkan untuk mengalamati tergantung pada lebar jalur alamat yang dimilikinya. Mikroprosesor Z 80 buatan Zilog yang mempunyai 16 saluran alamat, artinya mampu meraih 65536 lokasi memori (64 K byte). Tiap lokasi memori mampu menyimpan data 8 bit.

Pada mikroprosesor Z80, ada Arithmetic Logic Unit (ALU) dan juga register CPU yang digunakan untuk menyimpan data sementara. Register-register ini menyimpan hasil hitungan atau cacatan untuk melakukan suatu operasi tertentu secara berulangkali. Ururan-urutan instruksi merupakan program yang disimpan pada memori, dialirkan melalui bus data secara berurutan, kemudian pada bus dalam, sampai pada register instruksi. Semua instruksi dikaji, dan sistem control mengirim isyarat-isyarat untuk pengendalikan baik ke luar atau ke dalam mikroprosesor. CPU berhubungan dengan bagian lain melalui jalur data bus, jalur alamat, dan jalur control. Bus adalah sejumlah konduktor, yang berfungsi untuk mengalirkan/menyalurkan data ke luar atau yang masuk pada mikroprosesor. Mikroprosesor Z 80 mempunyai register-register (A,B,C,D,E,H,L,F,I) yang berkapasitas 8 bit, dan dilengkapi dengan register 16 bit, yaitu IX, IY, SP, dan PC. Register-register ini digunakan untuk mengolah dan menyimpan data sementara. 2. Arsitektur Mikroprosesor Setiap mikroprosesor mempunyai bentuk dan disain arsitektur yang berbeda antara yang satu dengan yang lainnya dan masing-masing mempunyai keunggulan dan kelemahan. Arsitektur µp yang diperkenalkan pada bahasan ini, yaitu Z 80, 8085, 6800, 68020, 80486, dan Pentium. Tetapi yang akan dijelaskan secara mendalam yaitu mikroprosesor Z 80. Di dalam CPU Z80 terdapat 22 register, yaitu 18 register yang berkapasitas 8 bit dan 4 register berkapasitas 16 bit. Register ini dapat dipakai dan diprogram oleh pemakai. Susunan dari register-register ini dapat dilihat pada gambar 1. 3. Register-Register dan Fungsinya. Akumulator (register A dan A = 8 bit) digunakan untuk menyimpan data sementara dari hasil perhitungan ALU (Arithmetic Logic Unit).

Flag register (register F dan F = 8bi ) digunakan untuk menunjukkan kondisi-kondisi yang terjadi sebagai hasil operasi arithmetic dan logic dengan format sebagai berikut. B 7 B 6 B 5 B 4 B 3 B 2 B 1 B 0 S Z X H X P/V N C X, tidak diperhatikan C = carry C = 1, bila ada carry dari bit 7 C = 0, bila tidak ada carry dari bit. N = Negative N = 1, operasi yang dilakukan operasi pengurangan N = 0, operasi yang dilakukan operasi penjumlahan. P/V = Parity/overflow. P = parity, digunakan pada operasi logika P = 1, merupakan parity genap P = 0, merupakan parity ganjil.

Gambar 1. Diagram Blok Arsitektur Z 80. (Sumber dari data book mikroprosesor Zilog) V = Overflow, digunakan pada operasi arithmetic V = 1, terjadi overflow V = 0, tidak terjadi overflow. H = half carry H = 1, bila ada carry dari bit 3 ke bit 4 pada hasil operasi

Penjumlahan atau pengurangan. H = 0, bila tidak ada carry dari bit 3 ke bit 4. Z = 0 Zero Z = 1, bila hasil operasi = 0 Z = 0, bila hasil operasi tidak = 0. S = sign S = 1, bila bit 7 sama denga 1 dan menandakan sebagai bilangan Negatif. S = 0, bila bit 7 sama dengan 0 dan menandakan sebagai bilangan Positif. Register B dan C, register 8 bit yang dapat disambungkan menjadi register pasangan BC dengan lebar 16 bit, dapat digunakan untuk menyimpan cacahan. Demikian juga register HL dab DE berlaku untuk tujuan umum. Register Index Ix dan Iy, register 16 yang digunakan untuk menunjuk lokasi memori ekternal dalam instruksi-instruksi pengalamatan tak langsung. Register Stack Pointer (SP), register 16 bit digunakan untuk menangani register 2 byte (16 bit) untuk menyimpan alamat 16 bit dari suatu tumpukan (stack) dalam memori luar yang bersifat lifo, melalui instruksi Push dan Pop. Push digunakan untuk menyimpan data ke dalam stack. Pop digunakan untuk mengambil data dari stack. Register Program Counter (PC), register 16 bit digunakan sebagai penghitung program,yang berisi instruksi berikutnya akan dilaksanakan oleh CPU. Register Interupsi (I), register 8 bit digunakan untuk melayani interupsi yang berasal dari suatu alat peripheral, CPU akan loncat ke suatu lokasi memori yang mengandung subroutine yang melayani alat peripheral tersebut.

Register Memory Refresh, register 8 bit digunakan untuk menyegarkan memori dinamik selama waktu CPU sedang mendekode dan melaksanakan pengambilan instruksi dari memori. Mode Interupsi Z 80 Pada mikroprosesor Z 80 terdapat dua jenis interupsi yaitu : 1. Mode interupsi non- maskable, yaitu interupsi yang tidak terhalangi oleh IFF ( Interupsi Flip-Flop) dan berpioritas tertinggi setelah reset dan Busrq. 2. Interupsi maskable, yaitu interupsi yang dapat terhalangi oleh isi IFF. Interupsi ini dapat beroperasi dalam 3 mode : Mode 0, interupsi ini akan menyebabkan CPU melompat ke salah satu dari delapan alamat memori 0000H, 0008H, 0010H, 0018H, 0020H, 0028H, 0030H, dan 0038H. Mode 1, interupsi ini akan menyebabkan CPU melompat ke alamat 0038H. Mode 2, interupsi ini akan menyebabkan CPU menuju ke salah satu dari 128 alamat dalam satu halaman (page). Alamat page (8 bit teratas halaman) berasal dari register I, sedangkan 8 bit terbawah berasal dari komponen yang meminta interupsi. Mode ini harus dipakai untuk beroperasi dengan komponen dari keluarga Z 80 seperti Z 80 PIO, Z80 CTC, Z80 SIO, dan Z80 DMA. 4. Mode Pengalamatan Mode pengalamatan dalam mikroprosesor Z 80 ada 10 jenis, yaitu : 1. Immediate addressing, pada immediate addressing operand adalah merupakan bilangan konstan hexadecimal 8 bit. Operand ditulis setelah opcode dan disimpan berurutan pada lokasi memori. Formatnya : byte 1 Opcode byte 2 n ( bilangan hexadecimal ). Contoh, Mnemonic : LD A, 30 H

Op- code : 3E 30. 2. Immediate extended addressing, merupakan perluasan dari immediate addressing dimana operand merupakan data 16 bit. Formatnya : byte 1 Op code Byte 2 n1 Byte 3 n2 Contoh, Mnemonic : LD HL, 1860 Op- code : 21 60 18 3. Modified page zero addressing, dalam perangkat instruksi mikroprosesor Z80 terdapat 8 instruksi yang menggunakan modified page zero addressing, yaitu instruksi Restart (RST). Instruksi-instruksi tersebut adalah RST 08H, RST 10H, RST 18H, RST 20H, RST 28H, RST 30H, dan RST 38H. 4. Relative addressing, digunakan untuk instruksi jump relative merupakan instruksi 2 byte yang terdiri dari Op - code dan displacement (pergeseran). Batasan loncatan untuk bilangan decimal dari 128 sampai dengan + 127. Contoh, Mnemonic : JR F4 ; Op code 18 F4. 5. Extended Addressing, untuk membentuk alamat 16 bit. Pada extended addressing terdapat instruksi yang terdiri dari satu op-code atau dua op-code yang diikuti oleh 2 byte alamat atau operand. Formatnya : byte 1 op code Byte 2 (kemungkinan tambahan op code) Byte 3 n1 Byte 4 n2.

Contoh, Mnemonic : LD A, ( 1870) Op code : 3A 70 18. 6. Indexed Addressing, digunakan register index 16 bit (IX dan IY) dan pergeseran diletakan sesudah op code. Formatnya : Byte 1 op - code Byte 2 op code Byte 3 op disp. Contoh, Mnemonic : LD ( IX + 05H ), E Op code : DD 73 05. 7. Register Addressing, digunakan untuk mentransfer data antara register yang berbeda. Contoh, Mnemonic : LD A, D Op code : 7A. 8. Implied Addressing, digunakan pada instruksi-instruksi yang berhubungan dengan register. Contoh, Mnemonic : ADC A, L Op code : 8 D. 9. Register Indirect Addressing, digunakan untuk memindahkan data antara register dan lokasi memori yang ditunjukkan oleh pasangan register 16 bit. Contoh, mnemonic : LD ( BC), A Op code : 02. 10. Bit Addressing, digunakan untuk men-set, reset atau menguji keadaan dari salah satu bit dalam register Z 80 atu bit dari isi lokasi memori. Formatnya : byte 1 op code

Byte 2 bit, register Contoh, Mnemonic : SET 4, L Op code : CB 5E. 5. Mode Interupsi pada mikroprosesor Z80 Pada CPU Z80 terdapat 2 jenis interupsi, yaitu : - Non Maskable Interrupt yaitu interupsi yang tidak terhalangi oleh IFF (Interupt FF) dan berprioritas tertinggi setelah RESET dan BUSRQ. - Maskable Interrupt yaitu interupsi yang terhalangi oleh isi IFF Maskable Interupt dapat dioperasikan dalam 3 mode, yaitu : 6. Referensi : 1) Mode 0, interupsi ini akan menyebabkan CPU melompat ke salah-satu dari 8 alamat memori : 0000H, 0008H, 0010H, 0018H, 0020H, 0028H, 0030H dan 0038H. 2) Mode 1, interupsi akan menyebabkan CPU melompat ke alamat 0038H. 3) Mode 2, interupsi ini akan menyebabkan CPU menuju ke salah satu dari 128 alamat dalam satu halaman (page). Alamat page ( 8 bit teratas alamat ) berasal dari register I sedang 8 bit terbawah berasal komponen yang meminta interupsi. Mode ini harus dipakai untuk beroperasi dengan komponen dari keluarga Z80 seperti Z80 PIO, Z80 CTC, Z80 SIO, Z80 DMA. 1. Zilog Data Book. 1990. 2. Douglas V.Hall. (1986). Microprocessor and Interfacing Programming and Hardware. New York : Mc Graw Hill. 3. Harry Garland. (1979). Introduction to microprocessor system design.new Jersey : MC Graw Hill. 4. Jacob Millman. (1979). Microelectronics, Digital and Analog Circuits and Systems. New York: McGraw-Hill, Inc. 5. Brey, Barry B. (2003). The intel microprocessors : 8086/8088/80186/80286/80386/80486, Pentium, Pentium Pro processor, Pentium II, Pentium III, and Pentium 4: architecture, programming, and Interfacing- 6 th ed. New Jersey : Pearson Education.