simple as possible (sap) - 1 · memori yang telah dipindahkan ke register b dan hasilnya disimpan...
TRANSCRIPT
Arsitektur Komputer SAP-1
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Perangkat Instruksi (Instuction Set)
Terdapat dua jenis instruksi pada komputer SAP-1 :
Memiliki satu operand : LDA, ADD, dan SUB.
Ketiganya disebut juga Memory Reference Intruction.
Tanpa operand : OUT dan HLT.
Perangkat Instruksi (1)
LDA (Load The Accumulator)
Instruksi LDA mengambil data dari memori danmemasukkannya ke Akumulator.
Contoh :LDA AH
Instruksi ini mengambil data dari memori AH dandisalinkan ke Akumulator.
Perangkat Instruksi (2)
ADD (Adder)Instruksi ini menjumlahkan isi Akumulator dengan data memori yang telah dipindahkan ke Register B danhasilnya disimpan kembali di Akumulator.Contoh :LDA AHADD 8HMisal isi alamat AH = 0000 0011 dan 8H = 0000 0001Maka : LDA AH A = 0000 0011ADD 8H A = 0001 0011 + 0000 0001
A = 0000 0100
Perangkat Instruksi (3)
SUB (Subtract)Instruksi ini mengurangkan isi Akumulator dengan data memori yang telah dipindahkan ke Register B danhasilnya disimpan kembali di AkumulatorContoh :LDA AHSUB 5HMisal isi alamat AH = 0000 0101 dan 5H = 0000 0100Maka : LDA AH A = 0000 0101SUB 5H A = 0000 0101 - 0000 0100
A = 0000 0001
Perangkat Instruksi (4)
OUTInstruksi ini tanpa operand.Data dari Akumulator akan diambil dan dipindahkan keregister keluaran.
HLT (Halt)Instruksi ini berfungsi untuk menghentikan proses data. HLT menandai akhir suatu program. Setiap program dalam SAP-1 harus diakhiri oleh HLT.
Pemrograman SAP-1
Siklus Instruksi
Siklus instruksi terdiri dari2 tahapan (siklus):
FETCH
EXECUTE
Masing-masing siklusmemerlukan 3 siklusdetak (clock cycle).
No MnemonicKode Operasi(Opcode)
1 LDA 0000
2 ADD 0001
3 SUB 0010
4 OUT 1110
5 HLT 1111
Pemrograman SAP-1 (2)
Siklus FETCH (T1, T2, T3)
Pada siklus ini dilakukan pengambilan instruksi dari RAM ke IR.
– Mengirim isi PC ke MAR (Address state)
– Menaikkan cacahan PC (Increment state)
– Mengambil instruksi dari RAM ke IR (Memory state)
Masing-masing tahapan menggunakan satu siklus detak(clock cycle).
Pemrograman SAP-1 (3)
Siklus FETCH Tahapan pengiriman
alamat, T1. Nilai PC dikirim ke MAR, Pengendali & Pengurutmengirim signal kendali(CON) berikut :
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
1010 1 1 1 0 0 0 1 1
Pencacah Program
(Program Counter)
Register Masukan
dan MAR
4 4
Cp
CLK
Ep
CLR
CLK
LM
W
Pemrograman SAP-1 (4)
Siklus FETCH Tahapan penambahan
nilai PC dengan 1, T2. Pengendali & Pengurutmengirim signal kendali(CON) berikut :
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
11 0 1 1 1 0 0 0 1 11
Pencacah Program
(Program Counter)
Register Masukan
dan MAR
4 4
Cp
CLK
Ep
CLR
CLK
LM
W
Pemrograman SAP-1 (5)
Siklus FETCH Tahapan pengambilan
instruksi dari RAM keIR, T3. Pengendali & Pengurut mengirimsignal kendali (CON) berikut :
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
00 1 1 1 0 0 0 1 100
Memori
RAM 16 x 8
Register Instruksi
4
8
4
8
CLR
CLK
CE
LI
EI
W
Siklus FETCH Keseluruhan
Tahap pengalamatan (address state), penambahan nilaipencacah (increment state) dan pengambilan instruksidari memori (memory state) disebut juga dengan siklusfetch.
Berikut adalah gambar komponen-komponen yang aktif(warna biru) pada setiap tahapan T1, T2, T3.
Ilustrasi Siklus FETCH (T1) Address State
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Ilustrasi Siklus FETCH (T2) Increment State
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Ilustrasi Siklus FETCH (T3) Memory State
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Pemrograman SAP-1 (6)
Siklus Eksekusi (T4, T5, T6)
Instruksi LDA (T4 dan T5)
Tahapan pada instruksi LDA :
– Pada T4 alamat memori dikirim dari IR ke MAR.
– Pada T5 data dari RAM diambil dan dikirim keAkumulator.
– Pada T6 tidak melakukan apa-apa.
Pemrograman SAP-1 (7)
Siklus Eksekusi Instruksi LDA
Tahap pengirimanalamat, T4 : Pengendali& Pengurut mengirimsignal kendali (CON) berikut :
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
00 1 1 0 0 0 1 10 1 0
Register Instruksi
4
4
8LI
EI
W
Register Masukan
dan MAR
4 4
CLK
LM
Pemrograman SAP-1 (8)
Siklus Eksekusi Instruksi LDA
Tahap pengambilandata, T5 : Pengendali & Pengurut mengirimsignal kendali (CON) berikut :
Memori
RAM 16 x 88CE
WAkumulator A
8
8
8
LA
CLK
EA
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
00 1 1 0 0 0 1 10 1 0
Siklus Instruksi LDA Keseluruhan
Berikut ini adalah gambar komponen-komponen yang aktif (warna biru) pada tahap T4 dan T5 instruksi LDA.
Ilustrasi Siklus Intruksi LDA (T4) LDA
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Ilustrasi Siklus Intruksi LDA (T5) LDA
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Pemrograman SAP-1 (9)
Siklus Eksekusi
Instruksi ADD dan SUB
– T4 : Alamat memori dikirim dari IR ke MAR.
– T5 : Pemindahan data dari memori ke register B.
– T6 : Data dari akumulator dioperasikan (jumlah atau kurang) dengan data dari register B dan hasilnya disimpan di akumulator.
Perbedaan antara ADD dengan SUB hanya pada T6.
Pemrograman SAP-1 (10)
Siklus Eksekusi
T4 : Alamat memori dikirim dari IR ke MAR sama dengantahapan T4 pada LDA.
T5 : Pemindahan data dari memori ke register B. Pengendali & Pengurut mengirim signal kendali (CON) berikut :
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
00 1 1 0 0 01 10 1 0
Memori
RAM 16 x 88CE Register B8
LB
CLK
W
Pemrograman SAP-1 (11)
Siklus Eksekusi
Operasi ADD :
CON :
Operasi SUB :
CON :
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
00 1 1 0 01 10 1 1
CELMEpCp LI EI LA EA SU EU LB LO
CON =
CON =
00 1 1 0 11 10 1 1
Akumulator A
Register B
Penjumlah
& Pengurang
8
8
8
8
8
8
LA
CLK
EA
SU
EU
LB
CLK
Siklus Instruksi ADD/SUB Keseluruhan
Berikut ini adalah gambar komponen-komponen yang aktif (warna biru) pada tahap T4, T5, dan T6 instruksiADD/SUB.
Ilustrasi Siklus Instruksi ADD/SUB (T5)
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Ilustrasi Siklus Instruksi ADD/SUB (T6)
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Instruksi OUT
Instruksi OUT memerlukan satu tahap T4 yaitumemindahkan data dari akumulator kedalam register keluaran.
Siklus Instruksi OUT Keseluruhan
Pencacah Program
(Program Counter)
Memori
RAM 16 x 8
Register Masukan
dan MAR
4 4
4W
8
Register Instruksi
4
Pengendali
Pengurut
12
Akumulator A
Register B
Penjumlah
& Pengurang
Register Keluaran
8
Peraga Biner
Cp
4
8
4
8
8
8
8
8
8
8
8
CLK
Ep
CLR
CLR
CLK
CE
CLK
LM
LI
EI
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
LA
CLK
EA
SU
EU
LB
CLK
LO
CLK
Latihan (1)
Berikut adalah sebuah program SAP-1 dalam bentuk Mnemonik.
Berapakah nilai akhir padaregister Akumulator ?
R A M
Alamat Mnemonik
0 H LDA 9H
1 H ADD AH
2 H ADD BH
3 H SUB CH
4 H OUT
5 H HLT
Alamat Data
6 H 00 H
7 H 00 H
8 H 00 H
9 H 01 H
A H 02 H
B H 03 H
C H 04 H
D H 00 H
E H 00 H
F H 00 H
Jawaban (Hexadesimal)
A = 01H (LDA 9H) A = 01H + 02H (ADD AH)
A = 03 H A = 03H + 03H (ADD BH)
A = 06 H A = 06H – 04H (SUB CH)
A = 02 H Instruksi OUT akan mengeluarkan isi akumulator ke
register keluaran 0000 0010 atau (02 H). Instruksi HALT menghentikan permrosesan data.
Latihan (2)
Berikut adalah sebuah program SAP-1 dalam bentuk Mnemonik.
Berapakah nilai akhir padaregister Akumulator ?
R A M
Alamat Instruksi
0 H 0000 1001
1 H 0001 1010
2 H 0001 1011
3 H 0010 1100
4 H 1110 xxxx
5 H 1111 xxxx
Alamat Data
6 H 0000 0000
7 H 0000 0000
8 H 0000 0000
9 H 0000 0001
A H 0000 0010
B H 0000 0011
C H 0000 0100
D H 0000 0000
E H 0000 0000
F H 0000 0000
Jawaban (Biner)
A = 0000 0001 (LDA 9H) A = 0000 0001 + 0000 0010 (ADD AH)
A = 0000 0011 A = 0000 0011 + 0000 0011 (ADD BH)
A = 0000 0110 A = 0000 0110 – 0000 0100 (SUB CH)
A = 0000 0010 Instruksi OUT akan mengeluarkan isi akumulator ke
register keluaran 0000 0010. Instruksi HALT menghentikan pemrosesan data.
Latihan (3)
Berikut adalah sebuah program SAP-1 dalam bentuk Mnemonik.
Berapakah nilai akhir padaregister Akumulator ?
R A M
Alamat Mnemonik
0 H LDA EH
1 H ADD 8H
2 H SUB DH
3 H ADD BH
4 H OUT
5 H HLT
Alamat Data
6 H 00 H
7 H 00 H
8 H 08 H
9 H 00 H
A H 00 H
B H 07 H
C H 00 H
D H 05 H
E H 09 H
F H 00 H