TEKNIK MIKROPROSESOR
136 Setiap  siklus  dalam  state  HALT  merupakan  siklus  normal  M1  fetch, kecuali
untuk  penerimaan  data  dari  memori  diabaikan  ignore  dan  instruksi  NOP menekan  secara  internal  ke  CPU.  Jadi  sinyal  HALT  akan  terus  aktif  selama
waktu ini sehingga prosesor menentukan dalam state HALT.
Gambar 3.14. Siklus Pelaksanaan Instruksi HALT
3.12. S
IKLUS
P
OWER
-D
OWN
A
CKNOWLEDGE
Pada saat input clock ke CPU terhenti, yaitu pada saat kondisi High atau pada kondisi  Low  maka  CPU  akan  menghentikan  operasinya  dan  pada  kondisi  ini
masih mempertahankan kondisi register dan sinyal kontrol. Berikut merupakan diagram  waktu  untuk  siklus  fungsi  power-down,  dimana  instruksi  HALT
dijalankan.
TEKNIK MIKROPROSESOR
137 Gambar 3.15. Siklus Power-Down Acknowledge
3.13. S
IKLUS
P
OWER
-D
OWN
R
ELEASE
Pada  siklus  ini  sistem  clock  harus  dijalankan  terhadap  CPU,  dengan  tujuan melepas release state power-down. Jadi ketika sistem clock diberikan pada
CPU maka CPU akan melakukan operasi lagi retart, start dimulai dari kondisi terakhir  saat  power  down.  Berikut  merupakan  diagarm  siklus  Power-Down
Release.
Gambar 3.16. Siklus Power-Down Release 1.
TEKNIK MIKROPROSESOR
138 Gambar 3.17. Siklus Power-Down Release 2.
Gambar 3.18. Siklus Power-Down Release 3.
3.14. R
ESPON
I
NTERUPSI
Sebuah  interupsi  memungkinkan  bagi  devais  periperal  untuk  menghentikan sementara  operasi  CPU,  dan  memaksanya  untuk  memulai  rutin  layanan
periperal. Rutin layanan ini meliputi pertukaran data, status, kendali informasi antara CPU dengan devais periperal, dan pada saat selesai menjalankan rutin
layanan maka CPU kembali menjalankan operasi sebelum terjadi interupsi.
a.  EnableDisable Interupsi
Terdapat  2dua  buah  interupsi  pda  CPU  Z80,  yaitu  software  interupsi maskable  INT  dan  interupsi  non-maskable  NMI.  Untuk  interupsi  non-
TEKNIK MIKROPROSESOR
139 maskable  tidak  dapat  digagalkan  disable  oleh  programmer,  dan  interup  ini
diterima  ketika  devais  peripheral  meminta  rutin  layanan.  Interupsi  ini umumnya tersedia untuk layanan fungsi yang sangat penting, dan dapat diset
enable  atau  disable  oleh  programmer.  Dalam  CPU  Z80  terdapat  enable interup  flip-flop  IFF  yang  dapat  di-set  atau  di-reset  oleh  programer  melalui
instruksi Enable  Interrupt  EI  dan  Disable  Interrupt  DI.  Ketika  IFF  di-reset  maka
interupsi tidak dapat diterima oleh CPU, kedua enable flip-flop itu adalah IFF1 dan IFF2.
Gambar 3.19.  Interupsi Flip-Flop State  IFF1  digunakan  untuk    inhibit  interupsi,  sementara  itu  IFF2  digunakan
sebagai tempat penyimpanan tempore untuk IFF1. Dengan melakukan reset terhadap CPU akan memaksa IFF1 dan IFF2 pada
kondisi  reset,  yaitu  interupsi  di-disable.  Interupsi  dapat  diset  menjadi  enable setiap  saat  melalui  instruksi  EI  dari  programer,  ketika  instruksi  EI  dijalankan
maka  semua  permintaan  interupsi  yang  ditunda  tidak  akan  diterima  sampai setelah instruksi berikut setelah EI dijalankan.
Instruksi tunda  diperlukan  manakala  instruksi  berikutnya merupakan  instruksi return,  dan  interup  tidak  dilayani  sampai  proses  return  lengkap.  Instruksi  EI
melakukan  setting  terhadap    kedua  flip-flop  IFF1  dan  IFF2  pada  kondisi enable,  begitu  juga  saat    CPU  menerima  interup  maskable  maka  IFF1  dan
IFF2  secara  otomatis  akan    reset,  dan  berikutnya  terjadi  inhibid  terhadap interup sampai programer memberikan instruksi EI.
Tujuan dari IFF2 adalah untuk mengamankan status IFF1 ketika interup non- maskable  terjadi,  jadi  IFF1  akan  reset  untuk  mengjaga  interup  berikutnya
sampai dilakukan re-enable oleh programer. Dengan demikian setelah interup