450 likes | 718 Views
Simple as Posible Computer - 1. Rinta Kridalukmana Literatur : Organisasi & Arsitektur Komputer Maman Abdurohman, Informatika, Bandung. Arsitektur SAP-1. 3-state buffer Arsitektur SAP-1.
E N D
Simple as Posible Computer - 1 Rinta Kridalukmana Literatur : Organisasi & Arsitektur Komputer Maman Abdurohman, Informatika, Bandung
3-state buffer Arsitektur SAP-1 Semua keluaran menuju bus W dikendalikan oleh three state buffer yang memungkinkan transfer data dari register ke bus secara teratur. Lebar jalur bus SAP-1 = 8 bit
Jalur Kendali Umum Arsitektur SAP-1 • Jalur kendali umum yang hampir ada di setiap komponen adalah : • CLK : untuk memicu pengaktifan komponen dengan mode active high. Akan aktif bila nilai = 1 • CLK’ : untuk memicu pengaktifan komponen dengan mode active low. Akan aktif bila nilai = 0 • CLR : mereset komponen dengan mode active high. Aktif bila nilai 1 • CLR’ : mereset komponen dengan mode active low. Aktif bila nilai 0
Pencacah Program (Program Counter - PC) • Merupakan bagian dari unit kendali • Menggunakan 4-bit, sehingga nilai yang mungkin adalah 0000 – 1111 • Saat komputer mulai bekerja, nilai pencacah = 0000 • Nilai ini dikirim ke MAR saat siklus fetch • Pencacah akan menaikkan angka cacahnya menjadi PC PC + 1 • Proses akan dilakukan terus sampai ada instruksi HALT
Jalur Kendali Pencacah Program • Jalur kendali pada pencacah program adalah : • Ep : mengeluarkan nilai dari pencacah ke dalam bus W • Cp : mengendalikan increment pencacah : PC PC + 1
Masukan & MAR • Termasuk register saklar untuk alamat dan data • Bagian dari unit input • Memungkinkan pengiriman 4 bit alamat dan 8 bit data kepada memori (RAM) • Selama komputer bekerja, alamat dalam pencacah ditahan (latched) pada MAR • MAR kirim 4 bit alamat ke memori RAM untuk baca instruksi dalam memori • Jalur kendali adalah LM’, yaitu untuk mengambil data dari bus W ke dalam MAR
RAM 16 x 8 • Untuk menyimpan data & instruksi • Alamat memori yang akan digunakan ditunjukkan oleh MAR • Instruksi / data lalu ditaruh dalam bus W • Instruksi masuk ke IR • Data masuk ke register • Jumlah alamat 16 dan lebar data = 8 bit • Itulah sebabnya PC kita lebarnya 4 bit • Jalur Kendali : • CE’ : mengeluarkan 8 bit dari memori ke bus W
Pengendali Pengurut (Controller Sequencer) • Berfungsi untuk mengatur seluruh jalannya komputer, termasuk eksekusi instruksi • Sebelum komputer bekerja, sinyal CLR & CLK dikirim ke PC & IR • Sinyal CLR mengakibatkan • PC direset ke 0000 • Instruksi terakhir dalam IR dihapus • Sinyal CLK jg dikirim ke semua register buffer • Mensinkronkan operasi komputer • Menjamin setiap langkah operasi akan terjadi sbgmn mestinya
Akumulator • Sebuah register buffer, menyimpan sementara hasil operasi • Punya 2 macam keluaran : • Keluaran 2 keadaan diteruskan ke bagian penjumlah-pengurang • Keluaran 3 keadaan dikirimkan ke bus W • Data pd kedua macam keluaran sama, yg membedakan adalah keluaran 3 keadaan akan ditaruh ke bus W jika EA tinggi • Jalur kendali : • LA’ : ambil data 8 bit dari bus W • EA : mengendalikan data 8 bit yg menuju ke bus W
Penjumlah-Pengurang • Menggunakan sistem Komplemen 2 (K-2) • Jalur Kendali : • SU : menentukan jenis operas (+ / -). Jika SU aktif maka operasi pengurangan, sebaliknya penjumlahan • EU : mengendalikan data 8 bit menuju ke bus W • Bersifat asinkron, artinya isi keluarannya akan berubah bila terjadi perubahan pada data masukan
Register B • Adalah register buffer • Jalur Kendali : • LB’ : mengambil data 8 bit dari bus W • Keluaran dari register B mengaktifkan penjumlah-pengurang, memasukkan bilangan yang akan dijumlahkan dengan atau dikurangkan dari isi akumulator
Register Keluaran • Berisi hasil operasi dari register penjumlah pengurang, setelah sementara disimpan dalam akumulator • Jalur kendali : • L0’ : mengambil data 8 bit dari bus W • Sering disebut output port • Dalam mikrokomputer digunakan untuk menggerakkan alat spt printer, CRT, dsb
Peraga Biner • Terdiri dari 8 buah LED yang dihubungkan dengan sebuah flip-flop dari output port. • Menyajikan isi output port • Hasil jumlah/kurang dilihat dalam bentuk biner
Instruction Set SAP-1 (1) • Instruction Set : • Operasi-operasi dasar yang dapat dilakukan oleh komputer • Terdiri dari 2 jenis : • Operasi dengan 1 operand. Contoh : LDA, ADD, SUB • Disebut juga memory reference instruction karena menggunakan data yang tersimpan dalam memori • Operasi dengan tanpa operand. Contoh : HLT, OUT
Instruction Set SAP-1 (2) • Instruksi-instruksi pada SAP-1 : • LDA (Load the Accumulator) • Untuk mengambil data dari memori dan dimasukkan ke dalam accumulator • Contoh : LDA AH • ADD • Untuk menjumlahkan isi accumulator dengan data memori • Contoh : ADD 8H • SUB • Untuk mengurangkan isi accumulator dengan isi register B • Contoh : SUB DH
Instruction Set SAP-1 (3) • Instruksi-instruksi pada SAP-1 (lanjutan): • OUT • Adalah instruksi tanpa operand • Data dari akumulator diambil dan dimasukkan ke dalam register keluaran • HLT • Halt • Untuk menghentikan proses • Akhir suatu program
Contoh Penggunaan Set Instruksi Misal AH = 00000011 dan 8H = 00000001 LDA AH ; A = 00000011 diisi ke accumulator ADD 8H ; dimuat ke register B A = A + 00000001 = 00000100 dimuat ke accumulator
Pemrograman SAP-1 • Dalam melakukan operasinya, tiap instruksi komputer SAP-1 diberi operation code (op code)
Siklus Instruksi • Dalam menyelesaikan instruksi diperlukan tahapan • Tahapan siklus instruksi : • Tahap Fetch • Tahap Execute • Masing-masing tahap butuh 3 siklus detak (clock cycle) diatur oleh Ring Counter • Karena 2 tahap berarti 6 siklus detak (T) • T = T6T5T4T3T2T1 • Saat komputer jalan, data dari Ring Counter adalah 000001 • Selanjutnya 000010, 000100, 001000, 010000, 100000 • Tiap instruksi diselesaikan dalam 6 keadaan T tersebut
Siklus Fetch • Aktifitas dalam siklus Fetch : • Kirim PC ke MAR Address state • Tambah PC Increment State • Ambil instruksi dan masukkan ke IR Memory State
Siklus Eksekusi • Aktifitas dalam siklus Fetch : • Alamat memori dikirim dari IR ke MAR • Ambil data dan dimasukkan dalam accumulator • Kedua aktifitas dilakukan pada tahap T4 dan T5, sedangkan tahap T6 tidak melakukan apa-apa
Instruksi ADD & SUB • Data operand diambil dari memori dan dijumlahkan dengan accumulator hasilnya disimpan ke accumulator • Aktifitasnya : • Alamat memori dikirim dari IR ke MAR • Ambil data dari memori dan dikirim ke register B • Data register B dioperasikan dengan yang di accumulator dan hasilnya disimpan di accumulator • Ketiga aktifitas dilakukan saat T4, T5 dan T6
Instruksi ADD/SUB – Pengiriman Alamat (T4) Untuk T4 sama dg T4 untuk LDA
Instruksi ADD/SUB – ADD/SUB(T6) Untuk SUB, SU 1
Instruksi OUT • Hanya perlu 1 tahap T4 : • Pindahkan data dari akumulator ke register keluaran
Controller-Sequencer (1) • Merupakan register pengendali/pengurut • Pada komputer modern, bagian ini adalah control unit • Dalam komputer SAP, keluaran register ini lebarnya 12 bit yang mengendalikan seluruh register dalam SAP • Setiap tahap T1-T6 pengendali mengeluarkan sinyal kendali sebanyak 6 buah • Sinyal kendali yang keluar dari controller/sequencer disebut dengan mikroinstruksi
Controller-Sequencer (2) • Keluaran controller/sequencer tergantung dari 4 bit dari IR • Tiap instruksi memiliki kode yang berbeda-beda
Pencacah Presetable • Akan mencacah dari 0000 sampai 1110 • Jika instruksi LDA, • maka nilai pencacah berikutnya 0011 • Jika instruksi OUT, • Maka nilai pencacah berikutnya 1100
Mikroinstruksi & Mikroprogram • Mikroinstruksi adalah instruksi dalam bhs assembly • Contoh : LDA, ADD, SUB, OUT • Sering jg disebut mnemonik • Dalam kasus komputer SAP-1 terdapat dalam isi ROM Kendali 16x12 • Mikroprogram adalah program yang disimpan secara permanen dalam ROM kendali
Simulasi siklus T, set instruksi & controller/sequencer (1) Op Code : LDA = 0000, ADD = 0001 Misal AH = 00000011 dan 8H = 00000001
Simulasi siklus T, set instruksi & controller/sequencer (2) Op Code : LDA = 0000, ADD = 0001 Misal AH = 00000011 dan 8H = 00000001 RAM 0000 1010 (LDA AH) 0011