Pencacah yang dapat dipreset

Apabila T3 tinggi, masukan LOAD dari pencacah Dapat dipreset menjadi tinggi dan pencacah akan mengisikan alamat awal yang berasal dari ROM alamat. Selama keadaan-keadaan T yang lain pencacah melakukan pencacahan .
Mula-mula sinyal CLR tinggi yang berasal dari debounser kosong-mulai (clear- start) dideferensiasi menjadi paku tegangan positif yang tajam dan sinyal ini akan mereset pencacah. Pada waktu komputer mulai bekerja keluaran pencacah menunjukkan :0000 selama keadaan T1 0001 selama keadaan T2 , dan 0010 selama keadaan T3, setiap kali berlangsung siklus pengambilan, hal yang serupa akan terulang karena selalu akan dikeluarkan kata-kata 0000, 0001, dan 0010 dari pencacah selama keadaan T1, T2, T3.
Kode operasi (op code) dalam register instruksi mengendalikan siklus eksekusi. Jika instruksi ADD telah diambil, bit-bit I7 I6 I5 I4 = 0001. Bit-bit kode operasi ini menggerakkan ROM alamat, menghasilkan keluaran 0110 (Tabel 10-7). Alamat awal ini merupakan masukan ke pencacah pre-setabel ( yang dapat dipreset). Ketika T3 menjadi tinggi, tepi pulsa datak negatif yang berikutnya akan mengisikan 0110 kedalam pencacah presetabel tersebut. Pencacah kini dalam kondisi preset, dan pencacahan dapat memulai lagi dari alamat rutin ADD. Keluaran pencacah menunjukkan angka 0110 selama keadaan T4, 0111 selama keadaan T5 dan 1000 selama keadaan T6 .
Pada waktu dimulainya keadaan T1, tepi awal dari sinyal T1 didiferensiasi menjadi paku tegangan positif tajam yang akan mereset pencacah pada 0000 : yaitu alamat awal dari sikllus pengambilan. Selanjutnya siklus mesin yang baru akan dimulai lagi.
ROM Kendali
ROM kendali menyimpan mikroinstruksi SAP-1. Selama berlangsung siklus pengambilan. ROM ini menerima alamat 0000, 0001 dan 0010. Karena itu, keluarannya adalah
SE3H
BE3H
263H
Mikroinstruksi yang tertera dalam tabel 10-6 ini menghasilkan keadaan alamat, keadaan penambahan dan keadaan memori.
Selama sebuah instruksi ADD dilaksanakan ROM kendali menerima alamat 0110, 0111 dan 1000 selama siklus eksekusi. Ini menghasilkan keluaran :
1A3H
2E1H
3C7H
Mikroinstruksi diatas melaksanakan operasi penjumlahan sebagaimana telah dibahas sebelumnya.
Sebagai contoh yang lain, kita umpamakan instruksi OUT yang dilaksanakan. Maka kode operasi yang bersangkutan adalah 1110 sedangkan alamat awalnya adalah 1110 (Tabel 10-7). Selama siklus eksekusi berlangsung, keluaran pencacah adalah 1100, 1101 dan 1110. Sebagai akibatnya keluaran ROM kendali adalah 3F2H, 3E3H, dan 3E3H (Tabel 10-6). Rutin ini memindahkan isi akumulator kepintu keluaran.
Siklus Mesin Variabel
Mikro instruksi 3E3H dalam Tabel 10-6 menyatakan nop, dan ini muncul satu kali dalam rutin LBA dan dua kali dalam rutin OUT. Kadang nop ini dipakai dalam SAP-1 untuk mendapatkan satu siklus mesin yang tetap (fixed machine cycle) bagi semua instruksi . Dengan kata lain setiap siklus mesin memerlukan tepat enam keadaan T untuk jenis instruksi apapun. Bagi beberapa komputer adanya sebuah siklus mesin yang tetap mendatangkan keuntungan. Akan tetapi, bilamana kecepatan yang diutamakan, adanya keadaan nop akan memboroskan waktu, dan karena itu dapat dihilangkan.
Satu cara mempercepat operasi komputer SAP-1 adalah dengan melompati (melewati ) setiap keadaan T yang mengandung nop. Kita dapat menghapuskan keadaan nop melalui perancangan ulang dari rangkaian Gambar 10-16 Ini akan dapat mempersingkat siklus mesin dari instruksi LDA menjadi lima keadaan (T1, T2, T4 dan T5). Dan siklus instruksi OUT menjadi empat keadaan T (T1, T2, T3, dan T4).
Gambar 10-17. Siklus Mesin Variabel
Gambar 10-17 memperlihatkan suatu cara menyusun siklus mesin variabel (Variabel mashine cycle: siklusmesin yang dapat diubah-ubah/ diatur). Untuk intruksi LDA, operasi tetap sama dari T1 sampai T5. Ketika keadaan T6 dimulai, ROM kendali menghasilkan keluaran 3E3H (mikroinstruksi nop). Gerbang NAND dengan segera akan mendeteksi keadaan nop ini dan menghasilkan sinyal keluaran NOP. Sinyal NOP ini diumpanbalikkan ke pencacah lingkar melalui sebuah gerbang AND, seperti ditunjukkan oleh gambar 10-18. Sinyal ini mereset pencacah lingkar kepada keadaan T1, dan dengan demikian siklus mesin yang baru akan dimulai kembali. Operasi di atas telah mengurangi siklus mesin instruksi LDA dari enam keadaan menjadi lima keadaan.
Gambar 10-18.
Pada instruksi OUT, nop yang pertama terjadi dalam keadaan T5. Dalam hal ini, sesaat setelah keadaan T5 dimulai, ROM kendali menghasilkan keluaran 3E3H, yang segera akan dideteksi oleh gerbang NAND. Sinyal NOP yang rendah dari NAND tersebut. Kemudian mereset pencacah program kembali ke kedaan T1. Dengan cara ini kita telah mengurangi siklus mesin instruksi OUT dari enam keadaan menjadi empat keadaan.
Siklus mesin variabel biasa dipakai dalam mikroprosesor. Dalam 8085, sebagai contoh, siklus mesin mengambil dua sampai enam keadaan T karena semua keadaan nop yang tidak diinginkan dapat diabaikan.
Keuntungan
Satu keuntungan dari mikroprogramming adalah penghapusan bagian dekoder instruksi dan matriks kendali; kedua bagian ini menjadi sangat kompleks bagi perangkat instruksi yang lebih luas. Dengan kata lain, jauh lebih mudah menyimpan mikroinstruksi di dalam sebuah ROM daripada membuat rangkaian dekoder instruksi dan matriks kendali.
Lagi pula, sekali anda merangkaiakan sebuah dekoder instruksi dengan matriks kendali, hanya ada satu cara untuk mengubah perangkat instruksiitu yaitu dengan mengubah sambungan-sambungan rangkaian ini. Pekerjaan tersebut tidak diperlukan dengan kendali yang dimikroprogramkan; apa yang harus dilakukan adalah mengubah ROM kendali dan ROM alamat-awal. Ini merupakan keuntungan besar jika anda mencoba memperbaiki peralatan yang telah dijual sebelumnya.
Rangkuman
Sebagai kesimpulan dapat diutarakan bahwa kebanyakan komputer dewasa ini telah dirancang dengan menggunakan kendali yang dimikroprogram sebagai pengganti sistem kendali perangkat-keras Tabel pemikroprograman dan rangkaian-rangkaian yang bersangkutan dari komputer dewasa ini jauh lebih kompleks daripada yang berlaku untuk SAP-1, akan tetapi gagasan pokoknya tetap sama. Mikroinstruksi disimpan di dalam sebuah ROM kendali dan diakses dengan memberikan alamat mikroinstruksi yang diinginkan.
DAFTAR ISTILAH
Akumulator Tempat dimana jawaban-jawaban operasi aritmetik dan logika disimpan. Kadang-kadang disebut register A.
Bahasa asembli Mnemonik yang dipakai dalam penulisan sebuah program
Bahasa mesin Deretan “kata” terdiri dari 0 dan 1 yang dipakai dalam sebuah program.
Keadaan alamat keadaan T1. Selama keadaan ini, alamat didalam pencacah program dipindahkan ke MAR.
Instruksi acuan (rujukan ) memori. Sebuah instruksi yang memerlukan operasi memori kedua untuk mengakses data.
Keadaan memori Keadaan T3. Selama keadaan ini, instruksi didalam memori dipindahkan keregister instruksi.
Keadaan penambahan Keadaan T2 selama keadaan ini, sehingga pencacah program dinaikkan atau (ditambahkan).
Kode operasi (opcode). Bagian instruksi yang memberitahu komputer tentang operasi yang harus dilaksanakan
LDA. Mnemonik dari instruksi mengisi (load) akumulator.
Makroinstruksi Salah satu instruksi didalam perangkat instruksi.
MAR Memory address register (register alamat memori). Register ini menerima alamat data yang hendak diakses didalam memori. MAR memberikan alamat ini ke memori
Mikroinstruksi Kata - kendali yang berasal dari pengendali – pengurut. Ini merupakan langkah terkecil dam pemrosesan data.
Nop No operation (tanpa operasi) . Suatu keadaan tanpa kejadian apapun.
Pencacah program Register yang mencacah dalam bilangan biner. Isinya merupakan alamat instruksi berikutnya yang harus diambil dari memori.
Perangkat instruksi Kumpulan semua instruksi yang dimengerti yang ditanggapi oleh komputer.
Program obyek Program yang yang dituliskan dalam bahasa mesin.
Program sumber Program yang ditulis dalam bentuk Mnemonik
RAM Random access memory nama yang lebih baik adalah memori baca-tulis. RAM menyimpan program dan data yang dibutuhkan untuk operasi komputer register B Register pembantu yang menyimpan data untuk dijumlahkan pada atau dikurangkan isi akumulator.
Register instruksi Register yang menerima instruksi dari memori.
Register keluaran Register ini menerima data yang telah diproses dari akumulator dan menggerakkan peraga keluaran dari SAP-1. Disebut juga bandar keluaran.
Siklus instruksi seluruh keadaan yang diperlukan guna mengambil dan mengeksekusi sebuah instruksi.
Siklus mesin Semua keadaan yang dibangkitkan oleh pencacah putar (lingkar)
Siklus pengambilan Bagian pertama dari siklus instruksi. Selama siklus pengambilan, alamat dikirim ke memori dan angka pencacah program ditingkatkan, dan instruksi dipindahkan dari memori ke register instruksi.
Gambar 10-20. Skematik Lengkap SAP-1 (a)
Gambar 10-21. Skematik Lengkap SAP-1 (b)
Gambar 10-22. Skematik Lengkap SAP-1 (c)
Gambar 10-23. Skematik Lengkap SAP-1 (d)
S A P - 1
|