KOMPUTER SIMPLE-AS-POSSIBLE Cp CLK L A 8 Program Counter Accumulator A 4 CLR Ep 8 E A L M CE I 8 CLK Instruction Register CLR E 8 8 8 L RAM 16 x 8 S 4 8 CLK Input & MAR Adder/Substractor B Register Output Register 4 I CLK ControllerSequencer CLK CLK CLR CLR Binary Display E L U U B CLK L O CLK KOMPONEN SAP-1 PROGRAM COUNTER Mengirimkan ke memori alamat dari instruksi berikutnya yang akan diambil dan dilaksanakan. INPUT & MAR Bagian dari memori SAP-1, Selama komputer bekerja, alamat dari PC ditahan pada MAR. RAM 16 x 8 Memori SAP-1, tempat dimana instruksi dan data disimpan. INSTRUCTION REGISTER (IR) Lokasi dimana Instruksi yang diambil dari RAM diterjemahkan. ACCUMULATOR Untuk penyimpanan sementara selama komputer beroperasi. KOMPONEN SAP-1 CONTROLLER & SEQUENCER Pengendali Komputer : CP EP LM CE LI EI LA EA SU EU LB LO ADDER/SUBSTRACTOR Menggunakan 2’s Compl. Bila SU = 0 maka operasi yang dilakukan penjumlahan sebaliknya menjadi pengurangan. REGISTER B Register Bufer. Register ini digunakan dalam operasi aritmatika OUTPUT REGISTER Mengeluarkan isi ACCUMULATOR ke BINARY DISPLAY BINARY DISPLAY Terdiri dari 8 buah LED, yang akan menampilkan isi register keluaran. Masing-masing LED dihubungkan dengan sebuah flip-flop dari register keluaran. PEMROSESAN INSTRUKSI 1. Fase Pengambilan (Fetch Cycle), bersifat tetap yaitu 3 pulsa T1 : Address State T2 : Increment State T3 : Memory State 2. Fase Eksekusi (Execution Cycle), jumlah pulsa tergantung instruksi FETCH CYCLE Cp EP LM PC A PC A MAR MAR Add/Sub Add/Sub RAM RAM B B IR IR O O CON CON D CON D CON T1 T2 FETCH CYCLE CLK PC A T1 MAR Add/Sub CE T1 T2 RAM B T3 LI IR O T4 T5 CON D CON T3 T6 T2 T3 T4 T5 T6 T1 INSTRUKSI SAP-1 LDA address ADD address SUB address OUT HLT ; isikan Accumulator (A) dengan isi yang ada di alamat address ; tambahkan isi A dengan isi yang ada di alamat address simpan di A ; kurangkan isi A dengan isi yang ada di alamat address simpan di A ; Tampilkan isi A ke Binary Dis ; Hentikan Proses di Komputer LDA (Load The Accumulator) PC LM PC A A MAR MAR Add/Sub Add/Sub CE RAM RAM B B EI IR IR O O CON CON D D CON T4 CON T5 LA LDA (Load The Accumulator) PC A MAR Add/Sub RAM B IR O CON D CON T6 ADD/SUB PC LM A PC MAR A MAR Add/Sub Add/Sub RAM B CE RAM B IR IR O O EI CON CON D D CON CON T4 T5 Lb ADD/SUB, OUT PC A LA PC Add/Sub EU MAR MAR RAM B IR O CON D A Add/Sub RAM B IR O CON D CON CON T6 EA T4 LO INSTRUKSI SAP-1 LDA 8H Misalkan Eksekusi instruksi Menghasilkan : R8 = 1111 0000 : LDA 8H : A = 1111 0000 INSTRUKSI SAP-1 ADD 9H Misalkan Eksekusi instruksi Menghasilkan : A R9 : B : A = 0000 0010 = 0000 0011 = 0000 0011 = 0000 0101 INSTRUKSI SAP-1 SUB CH Misalkan : A RC Eksekusi instruksi : B Menghasilkan : A = 0000 0111 = 0000 0011 = 0000 0011 = 0000 0100 MACHINE CYCLE INSTRUCTION CYCLE T1 T2 T3 T4 Pengambilan T5 T6 Eksekusi Siklus mesin Siklus instruksi T1 T2 T3 T4 Pengambilan T5 T6 T1 Eksekusi Siklus mesin T2 T3 T4 Eksekusi Siklus mesin Siklus instruksi T5 T6 ASSEMBLY & MACHINE LANG. Alamat Instruksi Alamat Instruksi 0H LDA 9H 0000 0000 1001 1H ADD AH 0001 0001 1010 2H ADD BH 0010 0001 1011 3H SUB CH 0011 0010 1100 4H OUT 0100 1110 XXXX 5H HLT 0101 1111 XXXX MICROPROGRAM SAP-1 MAKRO KEADAAN CON LDA T4 1A3H LM , EI T5 2C3H CE , LA T6 3E3H Tidak Ada T4 1A3H LM , EI T5 2E1H CE , LB T6 3C7H LA , EU T4 1A3H LM , EI T5 2E1H CE , LB T6 3CFH LA , SU , LU T4 3F2H EA , LO T5 3E3H Tidak Ada T6 3E3H Tidak Ada ADD SUB OUT CON = CP EP LM CE LI EI LA EA SU EU LB LO YANG AKTIF CONTOH Tuliskan program SAP-1 dalam bentuk Bahasa Assembly dan Bahasa Machine untuk Aritmatika berikut : 16 + 20 + 24 -32 Jika data tersimpan di memori mulai alamat 9H sampai CH !! Solusi Address 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H AH BH CH Instruction LDA 9H ADD AH ADD BH SUB CH OUT HLT XXX XXX XXX 10H 14H 18H 20H CONTOH Tuliskan program SAP-1 dalam bentuk Bahasa Assembly dan Bahasa Machine untuk Aritmatika berikut : 8+4–3+5-2 Jika data tersimpan di memori mulai alamat BH sampai FH !! CONTOH Misalkan sebuah 8085 menggunakan clock dengan frekuensi 4MHz. Instruksi ADD pada 8085 tsb membutuhkan 4 state untuk fetch cycle dan execution cycle. Berapa lama instruksi ADD pada 8085 tersebut berlangsung ? Solusi Periode dari Clock diketahui : T = (1 / f) = 1 / 4 MHZ = 250 ns Jadi setiap state memerlukan 250 ns. Karena ADD membutuhkan 4 state maka mesin tsb memerlukan waktu 4 x 250 ns = 1000 ns = 1 μs