Biasanya klo malam minggu anak2 ABG pada keluar ngecengin cew2nya trus ngajak keluar hanya sekedar menghabiskan waktu bersama diluar, dimall, nonton film, dinner dll…emang se, g semua yang ngelakuin “ritual” tersebut..tapi banyak juga yang menghabiskan waktu malam minggu nya bersama keluarganya dirumah, ngerjain tugas, laporan, ngegame, dll…
Termasuk saya yang sekarang masi dlab..g bosen2 rasanya,,hampir 1 minggu ini nongktong dlab mulu..cman tadi malem aj pengen tidur dikos..sebelumnya mah, tidur seadanya, narik kursi jejer 3 geplak, wes tidur dah…hehe..trus, malam ini mw nginep dlab lagi?? hmm..kayake g de…pengen plg aj dkos..tidur yang enak, biar g cepet sakit+masuk angin kena ACnya lab..hehe…
Balik ke topik..malam minggu biasanya ak ngabisin waktu dikos (biasanya)..nonton tivi dari acaranya extravaganza, bioskop transtv, bola di TV1, ampe bola di RCTI..hehehe…yah..bad habbit juga se…tapi gpp lah…kadang jauh dari ortu dan keseharian sibuk dikampus, rasa2nya pengen bgt ngerasa nikmatnya sendiri…merasa tenang, ngiburin diri, tanpa kekasih(halah).. hmm..rasanya tenang aj g ada yang ganggu n ngerasa private bgt..hehe…
yap..masi dlab aj…n ntar lagi mw plg ajah..walo blom ngantuk2 bgt juga..hehe…kena insomnia aku kayake..gara bola.
UJIAN Ketika aku mengalami kesulitan, kesusahan dan kesempitan dalam hidup, semua ini merupakan bagian dari rahmat Allah, agar aku dapat merasakan kebahagiaan, kesenangan dan kelapangan dalam hidup. Ketika aku mengalami sakit dan kekurangan harta, semua ini merupakan peringatan dari Allah agar aku menghargai dan memelihara nikmat-Nya, agar aku hati-hati menggunakan pemberian-Nya yng tak terhitung itu padaku. Ketika aku merasa kecewa karena tidak memperoleh apa yang kuinginkan, Allah pasti menyiapkan sesuatu yang lebih baik dan lebih indah untukku. Ketika hidupku dihadapkan berbagai bahaya dan rintangan dan berbagai kesulitan hidup lainnya, semua ini merupakan rintangan atau ujian dari Allah untuk mengingatkan diriku atas kesalahan dan dosa yang pernah aku lakukan, agar aku bertobat dan memohon ampun kepada Allah. ketika aku mengalami kegagalan dalam hidup ini, semua ini merupakan cara Allah untuk mengajarkan kepadaku tentang arti kesungguhan dan ketekunan, agar aku tidak mudah menyerah selagi masih ada sesuatu yang masih bisa kulakukan dan kuberikan. Karena tidak ada kegagalan dan sesuatu yang kalah, kecuali jika aku berhenti berusaha dan berikhtiar. Ketika aku merasakan kesedihan, kedukaan dan musibah dalam hidup, semua ini merupakan kasih sayang Allah, agar aku dapat merasakan kebahagiaan serta mengerti cara bersyukur dan berterimakasih kepada-Nya. Ketika terjadi sesuatu pada diriku~apakah itu berupa kebaikan, keburukan, keuntungan atau kerugian~ pertimbangkan dan renungkanlah. karena dibalik semua ini pasti ada maksud Allah untuk setiap kejadian. Dibalik ujian dan cobaan yang ALlah berikan, sesunggguhnya Dia sedang menunda pemberian kemuliaan. Sehingga, ketika aku mengalami cobaan dan berbagai ujian kehidupan, semua ini penanda bahwa Allah akan memberi karunia yang berlimpah.
CPU Z80 pertama kali dibuat oleh Zilog Corporation sekitar tahun 1975-1976. Karena sifat-sifat kerja dan kemudahan perancangan systemnya Z80 ini menjadi sangat popular. Sudah banyak perangkat lunak maupun perankat keras yang telah dibuat dengan mencermin dari Zilog-80. Z80 diterima tidak hanya dikalangan pendidikan, tetapi juga dunia industri. Banyak peralatan control di industri yang berbasis mikroprosesor diketahui menggunakan CPU Z80. Arsitektur CPU Z80 didesain dengan mengaplikasikan metode standart bus, yaitu mengelompokkan jalur-jalur dalam tiga macam bus : address bus yang berfungsi sebagai output yangdapat memiliki 3 kondisi (high, low, dan tri-state), data bus yang berfungsi sebagai input maupun output dan juga memiliki 3 kondisi (high, low, dan tri-state) dan control bus. Arsitektur dasarnya mengikuti arsitektur CPU Intel 8085 pula. Oleh karena itu, kode mesin Z80 dan 8080 memiliki kemiripan. Bial 8080 memiliki 78 instruksi, Z80 memiliki 158.
Tipe Z80 merupakan tipe awal yang memiliki kemampuan kerja yang hanya 2MHz, kemudian memperbaharui tipenya denagn Z80A yang memiliki kinerja sampai 4 MHz.Pada pertengahan tahun 1980, Z80 telah dikembangkan dengan menggunakan teknologi CMOS bertipe Z84C00. Tipe ini produksi terakhir yang mampu bekerja dengan frekuensi hingga 16 MHz.
Z80 bekerja pada tegangan tunggal +5V. Ia memiliki internal register sebanyak 208 bit, termasuk diantaranya 6 buah general-purpose register yang dapat digunakan terpisah (tiap 8-bit) ataupun yang digunakan untuk melipat gandakan accumulatore atau general-purpose register yang lain. Fasilitas exchange ini dapat digunakan unutk menunjukkan fungsi respon interrupt yang cepat. Z80 juga memiliki sebuah register stack pointer, program counter, dua buah index register, sebuah Refresh Register dan sebuah interrupt Register.
Register - register CPU Z80
CPU Z80 memiliki Read/Write memory yang disebut register sebanyak 208 bit atau (26x8) bit. Memori dari dalam CPU ini sangat berguna bagi para programmer dalam pembuatan suatu program.
a) Accumulator (A) dan Flag Register (F)
Z80 memiliki dua buah memori register bebas dengan nama khusus yaitu accumulator dan flag register, masing-masing terdiri dari 8-bit. Accumulator (A) adalah register yang memiliki kemapuan khusus dalam opersi aritmatika dan logika. Bial dilihat dari instruksi-instruksi dari assembly Language Z80 maka operasi-operasi aritmatika dan logika selalu melibtkan accumulator A. Bial dibandingkan dengan register-register yang lain maka accumulator ini paling sering digunakan oleh programmer. Flag registrasi digunakan untuk menunjukkan kondisi khusus pada operasi-operasi data 8-bit maupun 16-bit di accumulator A menghasilkan nol (zero) atau tidak. Accumulator dan flag register merupakan pasangan register yang sering diguanakan bersama untuk operasi aritmatikadan logika.
b) General Purpose Registers
Z80 memiliki register-register yang dapat sewaktu-waktu dipakai untuk menyimpan memori di dalam program, sehingga regiater-regiser Z80 serba guna (General Purpose Register). Register-reregister tersebut adalah B, C, D, E, H dan L yang masing-masing memiliki register komplemen tertentu. Tiap register memiliki struktur 8-bit. Bila diperlukan register 16-bit maka dapat disusun sebagai register-register BC, DE dan HL. Komplemennya adadlah BC’, DE’ dan HL’.
c) Special Purpose Registers
Program Counter (PC) bertugas ‘memegang’ 16-bit alamat setiap saat ketika CPU sedang melakujan proses fetch data dari memori. PC secarar otomatis akan bertambah dengan 1 bila sebuah proses fetch data telah selesai. PC juga akan berubah bial program melakukan jump ke lokasi tertentu. PC akan mengikuti alamat dimana proses jump menuju.
Stack Pointer (SP) bertugas memegang 16-bit alamat paling ats dari memori external (system RAM) pada setiap saat ketika program sedang berjalan. External Stack memori ini tersusun sengan sisem LIFO (Last-In-First-Out). Data di-push up dari suatu register CPU ke stack atau di-pop dari stack ke suatu register.
Dua Index Register (IX & IY) bertugas memegang sebuah 16-bit alamata yang digunakan dalam indexed addressing modes dalam pemrograman. Dalam hal ini isi index Register digunakan sebagai titik dasar hubungan CPU ke suatu region memori tertentu dimana data disimpan atau diambil.
Interrrupt Page Address Register (I). Z80 dapat dioperasikan dalam mode tertentu dimana suatu hubungan tak langsung ke memori dapat dicapai dengan memberikan suatu respons interrupt. Pada operasi ini register I dipakai unutk menyimpan high order 8-bit dari alamat yang akan dituju, sedangkan low order 8-bit akan diberikan oleh peranti yang melakukan interrupt itu. Dengan keunggulan itu, sub rutin interrupt dapat ditempatkan dimana saja sesuai dengan bentuk program yang diinginkan dengan waktu yang seminimal mungkin.
Memory Rfresh Register (R) pada Z80 memiliki sebuah memori refresh counter sehingga memungkinkan bagi Z80 untuk dirangkai dengan dynamic memory bersama-sama dengan static memory.
d) Aritmatic and Logic Unit (ALU)
Assembly Language Z80 memiliki fasilitas-fasilitas untuk megnolah data dalam opersi aritmatika dan logika. Operasi-operasi ini dilakukan dalam ALU (Arithmatic & Logic Unit ), yaitu suatu bagian rangkaian di dalam CPU yang bertugas khusus mengolah data dalam opersi arimatika dan logika. Setiap instruksi opersi aritmatika dan logika diberikan pada CPU maka ALU ini akan aktif untuk mengolah datanya. Operasi dalam ALU dinyatakan dalam bentuk instruksi Assembly Language Z80. Data-data sebagai objek opersi dapat diletakkan di dalam register-register sesuai dengan register yang digunakan oleh instruksi yang akan diberikan.
e) Register Instruksi dan Kontrol CPU
Setiap instruksi yang diambila dari memori selalu ditempatkan di register instruksi untuk kemudian didekode ( dijabarkan maksudnya sesuai dengan bahasa Assembly Z80). Setelah di decode, bagian control CPU akan menjalankan perintah sesuai dengan tugas menghasilkan sinyal-sinyal control read/write, sinyal control untuk mengatur ALU dan sinyal control lain untuk mengatur rangkaian-rangkaian luar.
f) Indikator Status Flag Register
Pada Z80 mempunyai Status Indicators yang berupa Flag Register. F dan F’ atau Flag Register dapat memberikan informasi kepada programmer mengenai status CPU Z80 setiap waktu pada saat CPU sedang bekerja.
Posisi-posisi bit tiap flag adalah sebagai berikut :
D7 S
D6 Z
D5 x
D4 H
D3 x
D2 P/V
D1 N
D0 C
Keterangan :
C = Carry Flag
N = Add/Subtruct Flag
P/V = Parity/ overflow Flag
H = Half-Carry Flag
Z = Zero Flag
S = Sign Flag
x = Tidak digunakan
Flag register mangandung 6-bit informasi status CPU Z80 yang dapat dites dan diset atau di-reset melalui instruksi-instruksi dalam program. Bit 3 dan bit 5 tidak diguanakan. 4 dan 6 bit yang digunakan bersifat testable. Dengan conditional jump, call atau return, 4 bit (C,P/V, Z dan S ) tersebut dapat diketahui statusnya. Dua bit sisanya tidak bersifat sestable dan hanya digunakan pada operasi aritmatik BCD.
Interupt CPU Z80
Interrupt adalah proses sisipan pelaksanaan suatu subroutine dalam suatu program, yang tidak dilakukan secara perangkat lunak (tidak disisipkan dalam bentuk instruksi di dalam program), tetapi dilakukan melalui perangkat keras dengan pengaktifan sinyal-sinyal interrupt.
Dalam praktik, kegunaan dari suatu interrupt adalah untuk mengizinkan suatu peralatan peripheral Input/Output Port atau suatu system rangkaian yang terhubung ke system CPU yang utama untuk menunda operasi yang sedang dijalankan oleh CPU sewaktu-waktu pada saat proses sedang berjalan, dengan maksud meminta atau memerintahkan CPU untuk mengeksekusi program-program rutin dari pheripheral-pheripheral tersebut sesuai dengan “vector” dari interrupt yang telah didefinisikan sebelumnya.
Timing CPU Z80
CPU Z80 memiliki 3 buah operasi dasar :
· Memori read/write
· I/O Devices read/write
· Interrupt
Suatu instruksi yang dimiliki Z80 sebenarnya hanyalah pengembangan dari ketiga operasi dasar tersebut. Setiap opersi tersebut membutuhkan 3 sampai 6 periode clock untuk dapat menyelesaikan tugasnya, atau bias juga diperpanjang untuk mengupayakan sinkronisasi CPU dengan peralatan luar. Dalam opersi program, siklus mesin yang pertama dari setiap instruksi adalah fetch cycle (pengambilan OpCode untuk di decode I. siklus ini membutuhkan 4 sampai 6 siklus, terkecuali bila control WATT diaktifkan. Siklus mesin berikutnya biasanya adalah perpindahan data antara CPUdengan memori atau peralatan I/O, meskipun ada pula pada instruksi –instruksi tertentu yang siklus mesin berikutnya adalah OpCode fetch lagi.
Waktu Eksekusi Intruksi CPU Z80
Z80 merupakan prosesor 8-bit sehingga memiliki 8-bit data bus. Kombinasi logika yang mungkin pada data bus bervariasi dari 00000000B sampai 11111111B atau sebanyak 256 kemungkinan. Dalam proses fetch data, CPU mengartikan setiap kombinasi logika yang ada pada data bus. Karena CPU 8-bit memiliki 256 kemungkinan kombinasi logika pada data bus maka CPU 8-bit dapat memiliki maksimal 256 instruksi dasar yang berbeda.Artinya setiap kombinasi logika pada data bus dapat diartikan sebagai sebuah instruksi.
Namun, umumnya para perancang mikroprosesor tidak menggunakan semua kombinasi logika data bus ini unutk dijadikan suatu instruksi dasar karena sebuah instruksi dasar masih dapat dikembangkan menjadi suatu instruksi lanjutan dengan menambahkan peran dibelakangnya dengan pertimbangan antara lain akan lebih efisien memanfaatkan sesediit mungkin teknik programming. Penggunaan instruksi yang banyak cenderung menuntut programmer untuk menyediakan energi yang lebih besar pula untuk menghafal dan mengerti arti tiap instruksi.
Sebuah variable autotransformer sering digunakan ketika membutuhkan variasi tegangan AC dari sumber tegangan yang tetap (AC). Jenis trafo ini tersusun atas satu lapis kumparan belitan yang seragam pada inti besi toroidal. Gerakan sikat karbon menggeser kontak dengan kumparan layanan yang variabel. Sikat dapat diatur posisinya dari sudut antara 0º dan 330º.
Geseran sikat pada lilitan terbuka, tegangan sekunder E2 bertambah sebanding dengan jumlah lilitan yang disisir. Tegangan input E1 biasanya dihubungkan pada 90 % kumparan tetap. Hal ini memungkinkanE2 bervariasi antara 0 s/d 110% tegangan input.
Variable autotransformer cukup efektivuntuk mengatur tegangan dengan kondisi beban yang berubah-ubah. Bagian sekundernya selalu dilindungi oleh fuse atau CB, sehingga I2 tidak melampaui rating arus trafo.