simple as possible (sap) - 1 · perangkat pembangun pencacah program (program counter) register...
TRANSCRIPT
Perangkat Pembangun
Pencacah Program (Program Counter) Register Masukan & Memory Address Register (MAR) Memori RAM 16 x 8 Register Instruksi Pengendali Pengurut (Control Sequencer) Akumulator A Penjumlah & Pengurang Register B Register Keluaran Peraga Biner
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
Penahan Tiga Keadaan (Three State Buffer)
Semua masukan dan keluaran register menuju dan daribus W dikendalikan oleh Three State Buffer (TSB).
TSB memungkinkan tiga kondisi :
– High (1) : Data 1 ditransfer
– Low (0) : Data 0 ditransfer
– High Impedance (impedansi tinggi) : Tidak ada data yang
mengalir dari DIn menuju DOut. Kondisi ini terjadi saat signal
Enable = 0 diberikan.
DInDOut
ENABLE
Jalur Kendali Komputer SAP
Jalur kendali umum adalah jalur kendali yang hampir adapada setiap komponen yaitu :
CLK : Memicu pengaktifan komponen dengan mode active high, aktif jika nilainya 1.
CLK : Memicu pengaktifan komponen dengan mode active low, aktif jika nilainya 0.
CLR : Mereset komponen dengan mode active high, aktifjika nilainya 1.
CLR : Mereset komponen dengan mode active low, aktifjika nilainya 0.
Pencacah Program (Program Counter)
Jalur kendali pada Program Counter (PC) :
– Ep : Mengeluarkan nilai dari PC ke Bus W
– Cp : Mengendalikan increment PC : PC PC + 1
Dalam SAP-1 instruksi disimpan pada RAM dibagian awal(dari alamat 0000, 0001, 0010, dst) dan data dibagianakhir.
Ketika komputer bekerja PC direset menjadi 0000.
Pencacah Program
(Program Counter)4
Cp
CLK
Ep
CLR
Pencacah Program (Program Counter)
Pada saat fetch, nilai 0000 ini dikirim ke MAR untukdiambil data pada alamat tersebut.
PC menaikkan angka cacahannya menjadi 0001MAR PCPC PC + 1
Setelah fetch dan instruksi dilaksanakan, nilai 0001 dikirim ke MAR dan PC kembali menaikkan angkanyamenjadi 0010.
Proses ini terus berlangsung sampai semua instruksidilaksanakan kecuali PC mendapat signal HALT.
PC dapat mencacah dari 0000 s/d 1111.
Register Masukan & MAR
Jalur kendali pada register ini :LM : Mengambil data dari bus W ke dalam MAR.
Register ini memungkinkan pengiriman 4 bit alamat dan 8 bit data ke RAM.
Selama komputer bekerja, alamat pada PC ditahan (latched) pada MAR.
Selanjutnya MAR mengirim alamat tersebut ke memori RAM, untuk membaca instruksi dalam memori.
Register Masukan
dan MAR
4 4
4CLK
LM
Random Access Memory (RAM) 16 x 8
Jalur kendali :CE : Mengeluarkan data 8bit dari memori ke bus W.
Memori utama tempatmenyimpan instruksi dan data.
Memori
RAM 16 x 8
4 4
8CE
Selama komputer beroperasi, RAM menerima alamat 4 bit dari MAR dan operasi baca dilaksanakan.
Memori dibaca, instruksi atau data akan keluar dari memoridan masuk ke dalam bus W.
Register Instruksi
Merupakan bagian dari unit kendali.
Pada saat instruksidari RAM masuk ke bus W, IR diaktifkan sehingga instruksiakan masuk ke IR.
IR dibagi jadi 2 bagian :– Bagian atas (4 bit) dikirim ke pengendali-pengurut.– Bagian bawah (4 bit lagi) ke bus W dikendalikan oleh TSB
Jalur kendali :– LI : Mengambil data 8 bit dari bus W.– EI : Mengendalikan data 4 bit dari IR ke bus W.
Register Instruksi
4
4
8
CLR
CLK
LI
EI
Pengendali Pengurut (Controller Sequencer)
Berfungsi untuk mengatur jalannya seluruh komputertermasuk eksekusi instruksi.
Sebelum komputer mulai bekerja, signal CLR dan CLK dikirimkan ke PC dan IR.
4
Pengendali
Pengurut
12
CELMEpCp LI EI LA EA SU EU LB LO
CLR
CLR
CLKCLK
Pengendali Pengurut (Controller Sequencer)
Signal CLK dikirimkan ke semua register untukmensinkronkan operasi komputer.
Data 12 bit dari register Pengendali Pengurut ini disebutMikroinstruksi.
Mikroinstruksi mengendalikan kerja seluruh register.
Akumulator (Accumulator)
Jalur kendali :
• LA : Mengambil data 8 bit dari bus W
• EA : Mengendalikan data 8 bit kebus W
Menyimpan hasil sementara selama komputer bekerja. Terdapat dua macam keluaran :
– Keluaran dua keadaan yang secara langsung diteruskan kepenjumlah-pengurang.
– Keluaran tiga keadaan dikirim ke bus W dan akumulator secaraterus menerus mengaktifkan rangkaian penjumlah-pengurang.
Akumulator A
8
8
8
LA
CLK
EA
Penjumlah & Pengurang
Jalur kendali :
• SU : Signal rendah (0) makaoperasi penjumlahan, bila signal tinggi (1) maka operasipengurangan.
• EU : Mengeluarkan data ke bus W
SAP-1 menggunakan penjumlah & pengurangkomplemen-2.
Data yang dijumlahkan atau dikurangkan berasal dariAkumulator dan Register B.
Penjumlah
& Pengurang
8
8
8SU
EU
Register B
Jalur kendali :
– LB : Menyalurkan data dari bus W ke register B.
Isi dari register B akan dipindahkan ke Penjumlah & Pengurang saat operasi penjumlahan atau pengurangan.
Register B
8
8LB
CLK
Register Keluaran
Jalur kendali :• LO : Mengambil data 8 bit dari
bus W
Pada akhir operasi, isiAkumulator akandipindahkan ke register keluaran.
Register ini sering disebut output port karena data yang telah diproses dapat dikeluarkan dari komputer melaluiregister ini.
Output port ini akan dihubungkan dengan interface circuit.
Register Keluaran
8
Peraga Biner
8LO
CLK
Perangkat Instruksi (Instruction 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 = 0001 0001Maka :LDA AH A = 0000 0011ADD 8H A = 0000 0011 + 0001 0001
A = 0001 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 = 0100 0101 dan 5H = 0100 0100Maka : LDA AH A = 0100 0101SUB 5H A = 0100 0101 - 0100 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.
Latihan (1)
LDA DH (DH = 0000 1001)ADD 5H (5H = 0001 0010)OUTHLT
LDA FH (FH = 0010 0110)SUB 4H (4H = 0000 0011)OUTHLT
Sertakan dengan gambar pada RAM.