11/13/2015
Tahun Akademik 2015/2016 Semester I
DIG1B3 – Konfigurasi Perangkat Keras Komputer
SAP-1 Bagian 2 Mohamad Dani (MHM) E-mail:
[email protected]
Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom Applied Science School
Siklus Pengambilan
Control Unit membangkitkan kata kendali untuk mengambil dan melaksanakan setiap instruksi. Setiap instruksi melewati beberapa keadaan pewaktuan Tstate = Keadaan T = periode-periode waktu pada saat mana terjadi perubahan isi register Tstate menggunakan ring counter T = T6T5T4T3T2T1
1
11/13/2015
Siklus Pengambilan Tstate menggunakan ring counter T = T6T5T4T3T2T1 - Awal operasi kata T menunjukkan : T = 000 001 Pada pulsa clock berikutnya menghasilkan: T = 000 010 T = 000 100 Ring Counter T = 001 000 T = 010 000 T6 T5T4T3T2T1 T = 100 000
CLK CLR
Siklus Pengambilan
Diagram Pewaktuan
Perpindahan keadaan T terjadi bila clock berubah dari 1 ke 0
2
11/13/2015
Siklus Pengambilan
Address State (T1 State) Keadaan T1 disebut Address State karena alamat di dalam PC dipindahkan ke MAR (Memory Address Register) selama keadaan ini. Selama Address State ini, sinyal yang aktif hanya E p dan L Pada Address State, controller-sequencer mengeluarkan kata kendali: CON C E L C L E L E S E L L M
P
P
M
E
I
I
A
A
U
U
B
O
0101 1110 0011
Increment State (T2 State) Keadaan T2 : keadaan penambahan 1 karena hitungan pada PC dinaikkan dengan . Sinyal yang aktif Cp. Kata kendalinya yaitu:
CON CP EP LM CE LI EI LA EA SU EU LB LO
1011 1110 0011
Siklus Pengambilan
Memory State (T3 State) Keadaan T3 disebut Memory State karena instruksi pada RAM dengan alamat yang ditunjuk dipindahkan dari memori/RAM ke Instruction Register. Selama Memory State ini, sinyal yang aktif hanya dan Pada Memory State, controller-sequencer mengeluarkan kata kendali: CON CP EP LM CE LI EI LA EA SU EU LB LO
0010 0110 0011
3
11/13/2015
Siklus Pengambilan
Bus W Cp CLK CLR Ep
PC
4 8
A
CLK
EA 8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
0101 1110 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
CON CP EP LM CE LI EI LA EA SU EU LB LO
8
4
CLK
T1 State
LA
8
CLK CLK
CON
D
12
CLR CLR
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Pengambilan T2 State Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
E A CON CP EP LM CE LI EI LA E A SU EU LB LO
8
1011 1110 0011
LM CLK
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
SU EU
4
8
CE
RAM
L
I CLK CLR
8
LB
8
IR
8
4
LO
8
4
EI
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
4
11/13/2015
Siklus Pengambilan Cp CLK CLR Ep
LA
8
PC
4 8
A
CLK
EA 8
LM
MAR
4
ADD/ SUB
CE
RAM
8
B
L
I CLK CLR
8
LB CLK
E
I
CON CP EP LM CE LI EI LA EA SU EU LB LO
8
IR
8
4
LO
O
CLK
0010 0110 0011
8
4
EI
SU EU
8
8
4
CLK
T3 State Ketika C dan L aktif, RAM siap mengirimkan data yang ditunjukkan oleh MAR ke bus W pada saat yang sama IR mengambilnya.
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>
Siklus pelaksanaan terjadi pada T4, T5 dan T6 Transfer-transfer register yang terjadi bergantung pada Instruksi yang dieksekusi.
5
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi LDA Jika IR telah diisi dengan kata LDA 9H, maka :
IR = 0000 1001 Selama T4 : instruction field dikirim ke pengendali yang melakukan pendekodean dan address field diisikan ke dalam MAR E I dan L adalah bit aktif pada T4 Selama T5 : data yang ditunjuk dalam memori akan dikirimkan ke dalam Akumulator. C dan LA adalah bit aktif pada T5 T6 adalah keadaan tanpa operasi (No-Operation / NOP) Selama T6, semua register dalam keadaan tidak Aktif M
E
Siklus Eksekusi <Execution Cycle>: Instruksi LDA Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T4 State
8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0001 1010 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
6
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi LDA Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T5 State
8
LM
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0010 1100 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
MAR
CLK CLK
CON
D
12
CLR CLR
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>: Instruksi LDA Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T6 State
8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0011 1110 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
7
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi LDA
Diagram Pewaktuan
Siklus Eksekusi <Execution Cycle>: Instruksi ADD Jika IR telah diisi dengan kata ADD AH, maka :IR = 0001 1010
Selama T4 : instruction field dikirim ke pengendali yang melakukan pendekodean dan address field diisikan ke dalam MAR E I dan L adalah bit aktif pada T4 Selama T5 : data yang ditunjuk dalam RAM disiapkan untuk dikirimkan ke dalam Register B. Dan pengisian Register B terjadi pada tepi positif clock. C E dan LB adalah bit aktif pada T5 Selama T6, bagian ADD menyiapkan Akumulator. Dan pengisian hasil jumlahan ke Akumulator terjadi pada tepi positif Selama clock. M
EU dan L A
adalah bit aktif pada T6
8
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi ADD Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T4 State
8
LM
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0001 1010 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
MAR
CLK CLK
CON
D
12
CLR CLR
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>: Instruksi ADD Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T5 State
8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0010 1110 0001
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
9
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi ADD Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T6 State
8
LM
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0011 1100 0111
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
MAR
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>: Instruksi ADD
Diagram Pewaktuan
10
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi SUB Jika IR telah diisi dengan kata SUB BH, maka :IR = 0010 1011
Selama T4 : instruction field dikirim ke pengendali yang melakukan pendekodean dan address field diisikan ke dalam MAR E I dan L adalah bit aktif pada T4 Selama T5 : data yang ditunjuk dalam RAM disiapkan untuk dikirimkan ke dalam Register B. Dan pengisian Register B terjadi pada tepi positif clock. C E dan LB adalah bit aktif pada T5 Selama T6, bagian ADD menyiapkan Akumulator. Dan pengisian hasil pengurangan ke Akumulator terjadi pada tepi positif Selama clock. M
SU , EU
dan L adalah bit aktif pada T6 A
Siklus Eksekusi <Execution Cycle>: Instruksi SUB Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T4 State
8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0001 1010 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
11
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi SUB Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T5 State
8
LM
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0010 1110 0001
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
MAR
CLK CLK
CON
D
12
CLR CLR
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>: Instruksi SUB Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T6 State
8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0011 1100 1111
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
12
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi SUB
Diagram Pewaktuan T1
T2
T3
T4
T5
T6
CLK Ep
LM
Cp CE LI EI LB SU LA
Siklus Eksekusi <Execution Cycle>: Instruksi OUT Jika akhir siklus Fetch IR berisi kata OUT, maka :
IR = 1110 XXXX Selama T4 : instruction field dikirim ke pengendali yang melakukan pendekodean dan Pengendali mengeluarkan kata kendali untuk memindahkan isi Akumulator ke register Keluaran. E dan L adalah bit aktif pada T4 Pada keadaan T5 dan T6 tidak terjadi Operasi (NOP) A
O
13
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi OUT Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T4 State
8
LM
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0011 1111 0010
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
MAR
CLK CLK
CON
D
12
CLR CLR
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>: Instruksi OUT Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T5 State
8
LM
MAR
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0011 1110 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
14
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi OUT Bus W Cp CLK CLR Ep
L
8
PC
4 8
A CLK
A
EA
T6 State
8
LM
4
8
ADD/ SUB
8
B
CLK
O
CLK
CE
RAM
L
I CLK CLR
8
CON CP EP LM CE LI EI LA E A SU EU LB LO
0011 1110 0011
LB
8
IR
8
4
LO
8
4
EI
SU EU
8
4
CLK
MAR
CLK CLK CLR CLR
D
12
CON
CP EP LM CE LI EI LA EA SU EU LB LO
Siklus Eksekusi <Execution Cycle>: Instruksi OUT
Diagram Pewaktuan
15
11/13/2015
Siklus Eksekusi <Execution Cycle>: Instruksi HLT Jika akhir siklus Fetch IR berisi kata HLT, maka :
IR = 1111 XXXX
Instruction Field dikirim ke pengendali yang melakukan pendekodean dan Pengendali mengeluarkan kata kendali untuk menghentikan operasi komputer dengan menghentikan clock.
Tidak membutuhkan rutin kendali.
Siklus Mesin dan Siklus Instruksi
SAP-1 mempunyai Enam keadaan T (3 untuk Fetch dan 3 untuk Execute) Siklus Mesin <Mc> SAP-1 memerlukan 1 Siklus Mesin untuk mengambil dan melaksanakan setiap instruksi. SAP-1 dengan clock frekuensi KHz ekivalen dengan periode 1 ms, maka 1 Siklus Mesin memerlukan waktu 6 ms. Jumlah keadaan T yang diperlukan untuk mengambil dan melaksanakan sebuah instruksi disebut Siklus Instruksi (Instruction Cycle=Ic) SAP-1 Ic = Mc
16
11/13/2015
MIKROPROGRAM SAP-1 (1)
Pengendali-pengurut mengeluarkan kata kendali yang masing-masing menimbulkan satu langkah kecil disebut MikroInstruksi.
MakroInstruksi adalah Instruksi-instruksi yang digunakan dalam pemrograman Assembly (LDA, ADD, SUB, dll)
Pada SAP-1, 1 makroinstruksi terdiri dari 3 mikroinstruksi
MIKROPROGRAM SAP-1 (2)
TABEL
17
11/13/2015
ROM KENDALI
Matrik kendali menjadi sangat rumit untuk perangkat Instruksi yang lebih besar/banyak, sehingga memerlukan ratusan/ribuan gerbang logika Pengendali Secara H/W.
Kata kendali yang disimpan dalam format mikroprogram ke dalam ROM Pengendali Secara S/W.
Menyederhanakan rangkaian Pengendali-Pengurut.
MIKROPROGRAM SAP-1 (2)
18
11/13/2015
Daftar Pustaka Albert Paul Malvino, Ph.D., Digital Computer Electronics, 3rd Edition, Bab 10
::. Terima Kasih .::
19