Anda di halaman 1dari 5

Judul

: Observasi Bus Z80

Dasar Teori

1. Pengertian Bus
Bus merupakan jalur yang digunakan system computer untuk mentransfer data antar
komponen komputer. Berikut ini adalah jenis-jenis bus dan fungsinya :
Address Bus : digunakan untuk menandakan lokasi sumber atau tujuan pada proses
transfer data
Data Bus
: sebagai jalur perpindahan data antar modul dalam system komputer
Control Bus : mengontrol penggunaan dan akses ke data bus dan address bus
2. Observasi Bus
Pada dasarnya mikroprosesor membaca instruksi yang diambilnya dari memori
mengeksekusinya langkah per langkah seperti yang ditunjukkan pada Gambar 2.1

Gambar 2.1. Flow Chart EksekusiLangkah per Langkah


Pada dasarnya proses di atas berjalan terus-menerus tanpa keluar dari loop, kecuali
dengan perlakuan tertentu, baik secara hardware (misalnya interrupt) maupun secara
software (misalnya perlaksanaan instruksi: jump, call & ret, push & pop, dan restart).
Setiap kali melaksanakan instruksi, PC ditambah 1. Misalnya mikroprosesor menapat
instruksi:
LD A, 0FH
Pada sistem rangkaian berbasis Z80, instruksi disimpan di memory dalam (2x8) bit, atau
2byte. Kode-kode mesinnya adalah 3 E dan 0 F. dalam biner adalah 00111110B dan
00001111B.

KodeMesin
3E
0F

Instruksi
LD
A,0FH

Pada saat CPU Z80 membaca dan mengartikan kode mesin 3E maka ia tahu bahwa
instruksi tersebut adalah Loading Value ke Register A. Instruksi ini menyebabkan CPU
Z80 menambah PC dengan 1, dan melanjutkan membaca data di alamat memory yang
ditunjukkan oleh PC yang baru. data yang ada di PC yang baru ini akan dianggap sebagai

nilai (value) yang harus diisikan (loading) ke register A. Selanjutnya CPU menambah lagi
PC dengan 1, dan melakukan proses membaca data berikutnya.
Menyimak bahwa sebuah instruksi dalam bahasa assembly dapat diikuti data yang
berlaku sebagai operand atau tidak, maka proses penambahan PC dengan 1 adalah berjalan
dengan berorientasi pada setiap lokasi memori. Jadi proses membaca dan mengeksekusi
sebuah instruksi bahasa assembly yang lengkap dapat terdiri lebih dari sebuah loop.
Setiap mikroprosessor menggunakan metode Stored Programming dalam
mengorganisasi penggunaan dan pengolahan data-datanya. Stored Programming adalah
metode penyimpanan sementara data-data yang sedang diolah yang melibatkan Program
Counter (PC), Stack Pointer (SP), danregister-register memori.
Program Counter bertugas memegang alamat dari setiap instruksi pada saat instruksi
tersebut sedang dijalankan. Setiap instruksi selesai dijalankan dan CPU melanjutkan
mengerjakan instruksi berikutnya, isi Program Counter akan berubah ke posisi di mana
instruksi berikut itu disimpan. Program counter ini berguna untuk menunjukan sedang
berada di alamat mana CPU bekerja.
Observasi bus yang dimaksud dalam percobaan ini adalah observasi yang dilakukan
terhadap suatu operasi kontinyu yang singkat yang sedang dilakukan oleh CPU Z80.
Dipilih operasi kontinyu yang singkat dimaksudkan agar piranti monitor (osiloskop), dapat
digunakan untuk menunjukkan bentuk-bentuk pulsa atau gelombang yang terjadi pada
address bus, data bus, dan beberapa jalur control yang bentuk-bentuk gelombang ini saling
berhubungan menunjukkan suatu fenomena operasi yang sedang dijalankan.
Operasi yang dibentuk oleh CPU Z80 ini dapat dikelompokkan dalam 3 buah operasi
dasar yaitu:
Memory read/write (baca/tulis data padamemori)
I/O Device read/write (baca/tulis data padapiranti Input/Output)
Interrupt (Interupsi)
Gambar 2.2 di bawah memperlihatkan tiga model pewaktuan dasar (timing) dalam
operasi CPU Z80, yaitu Op-Code Fetch, Memory Read and Memory Write, yang digabung
dalam suatu grafik.

Siklus
T
Clock
T2T1T3

T4

T1

SiklusMesin
SiklusMesin
M1
M2

T2

T3

T1

T2

T3

SiklusMesin
M3

OpCode Fetch
Memory Read Memory Write
SiklusInstruksi

Gambar 2.2 Pewaktuan Dasar Operasi pada CPU Z80

Pada gambar di atas, sebuah periode clock dinyatakan sebagai siklus T, sedang operasi
dasar yaitu siklus mesin dinyatakan sebagai M (Machine Cycle) yang terdiri dari M1, M2,
dan M3. M1 memiliki 4 buah siklus T, yaitu T1, T2, T3, dan T4 sedangkan M2 dan M3
memiliki 3 siklus T yaitu T1, T2, dan T3.

Dalam operasi suatu program, Machine Cycle yang pertama (M1) dari setiap instruksi
adalah fetch cycle (pengambilan OP code un di-dekode). Siklus ini membutuhkan 4 sampai
dengan 6 siklus, terkecuali bila control WAIT diaktifkan. Machine Cycle berikutnya
biasanya adalah perpindahan data antara CPU dengan memori atau peralatan I/O,
meskipun ada pula pada instruksi-instruksi tertentu Machine Cycle berikutnya adalah Op
code fetch lagi. Siklus ini membutuhkan 3 sampai dengan 5 siklus T, terkecuali pula bila
dibutuhkan proses sinkronisasi dengan membeirkan waktu tunggu.
Selama T2 dan apada setiap siklus berikutnya siklus mesin CPU dapat diperpanjang
dengan mengaktifkan WAIT. Teknik pemberian waktu tunggu yang fleksibel ini
membuat CPU Z80 dapat di-match-kan dengan bermacam-macam komponen memori yang
memiliki waktu akses (access time) yang berbeda.
Pewaktuan OpCode Fetch

Gambar 2.3 Pewaktuan Siklus Op Code Fetch


Gambar 2.3 memperlihatkan diagram pewaktuan op code fetch selama machine cycle
M1 (Op code fetch cycle). Pertama, pada siklus M1 address bus berisi data yang tersimpan

di Program Counter (PC). setengah clock cycle berikutnya sinyal MREQ menjadi aktif.
Pada saat ini alamat yang terhubung ke memori telah menjadi stabil sehingga falling edge

dari sinyal MREQ ini dapat dimanfaatkan langsung sebagai control chip enable pada
memori. Kontrol

RID

juga menjadi aktif yang menunjukkan bahwa pada saat itu data

bus sedang digunakan untuk proses pembacaan data memori. CPU memngambil data dari
memori pada saat rising edge T3 dan pada waktu yang bersamaan pula CPU meng-inaktif

kan sinyal RID dan MREQ . Dengan demikian data yang akan dibaca harus sudah
ada dan stabil di data bus sebelum sinyal RD menjadi inactive. Clock state T3 dan T4 dari
fetch cycle dapat digunakan untuk me-refresh memori dinamik, bila rangkaian terhubung
ke memori dinamik. Pada state ini A7 A0 dari address bus berisi alamat memeori yang

di-refresh dan sinyal control RFSH menjadi aktif. CPU menggunakan waktu T3 dan
T4 unutk menjaga agar data dari segmen memori yang berbeda tidak terhubung ke data

bus. Selama refresh sinyal MREQ juga aktif dengan selang waktu yang lebih pendek
dan berada di tengah-tengahwaktu aktif dari sinyal

RFSH
.

MREQ

ini biasanya juga

digunakan bersama-sama dengan

RFSH

RFSH

untuk proses me-refresh memori, karena

tidak dapat digunakan sendirian untuk mengaktifkan proses refresh. Hal ini

mengingatkan falling edge

RFSH

terjadi pada saat alamat yang berada di address bus

belum stabil.
Pewaktuan Memory Read/Write
Gambar 2.4 di halaman berikut ini menunjukkan suatu diagram pewaktuan dari
databerupa Op Code
read/write cycle pada CPU Z80.
Pada read/write cycle juga terjadi proses membaca data seperti pada siklus Op Code
D7 D0
Fetch, tetapi data read/write cycle di sini adalah hanya proses membaca data dari alamat
tanpa mendekode. Sedangkan pada siklus Op Code Fetch data yang sudah dibaca didekode
dan diartikan. Read/Write cycle ini pada umumnya terdiri dari 3 buah siklus bila WAIT
diaktifkan.

T1

Siklus
M1
T2
T3

T1

T2

T1
T3 berikutnya

Clock
A15
A0

MREQ

Alamat
Memory

Alamat
Memory

RD
WR

datadi CPU
bus

D7
D0

WAIT
Gambar 2.4.PewaktuanSiklus Read & Write
Pada prinsipnya, proses baca data dari memori ini sama dengan proses baca data pada
op code fetch cycle. Alamat memori yang akan dituju diletakkan di address bus begitu T1

mengalami sisi pulsa naik dari 0 ke 1 (rising edge). MREQ dan RD bersama-sama
aktif begitu T1 menuju ke 0 pada sisi falling edge wait state dapat ditambahkan dengan

mengaktifkan WAIT pada falling edge pulsa clock berikutnya, dalam hal ini adalah T2.
data yang akan dibaca berada di data bus pada saat siklus berada di T3. Data ini diambil
oleh CPU berdasarkan falling edge dari T3. berdasarkan falling edge ini pulsa sesaat

kemudian MREQ dan RD menjadi inactive kembali.


Write cycle memiliki T1, T2, dan T3 juga. Alamat memori yang akan ditulis mulai
diletakkan di address bus begitu rising edge T1 terjadi. Berdasarkan falling edge T1

MREQ
menjadi aktif. Begitu MREQ aktif data bus akan diisi data oleh CPU. Data
ini adalah data yang akan dituliskan oleh CPU ke memori. Wait state dapat ditambahkan

dengan mengaktifkan WAIT ppada saat rising edge T2 telah stabil. Sinyal WR aktif
begitu falling edge T2 terjadi. Pada saat inilah rangkaian memori mengambil data yang


telah ada di data bus. Berikutnya, berdasarkan falling edge T3 sinyal WR

MREQ
menjadi inactive kembali.

dan

Anda mungkin juga menyukai