Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
TEORI, IMPLEMENTASI & APLIKASI
[ ] :: SAP - 1 :: TEORI, IMPLEMENTASI & APLIKASI
2
Komputer SAP < Simple As Possible >
Perancangan komputer SAP bertujuan untuk memperkenalkan semua ide penting dibalik operasi komputer tanpa harus tenggelam dalam kerumitan yang tidak perlu. Meski sederhana, SAP sudah mengandung banyak konsep yang lanjut. SAP-1 merupakan tahap pertama dari evolusi ke arah prngembangan komputer modern.
3
ARSITEKTUR SAP-1 PC MAR RAM IR CON A ADD B O D
4 8 Cp CLK CLR Ep 12 Bus W ARSITEKTUR SAP-1 PC < Program Counter > Bagian unit kendali yang mencacah dari 0000 – 1111 Mengirimkan ke memori alamat, instruksi berikutnya yang akan diambil dan dilaksanakan. Direset ke 0000 sebelum program dijalankan 0000 Instruksi pertama 0001 Instruksi kedua 0010 Instruksi ketiga dst
4
ARSITEKTUR SAP-1 PC MAR RAM IR CON A ADD B O D
4 8 Cp CLK CLR Ep 12 Bus W ARSITEKTUR SAP-1 MAR < Memory Address Register > Register yang menyimpan sementara alamat memori untuk dikirimkan ke RAM RAM < Random Access Memory > TTL statik 16 x 8 untuk menyimpan program dan data. Menerima alamat 4 bit dari MAR dan operasi membaca dilakukan.
5
ARSITEKTUR SAP-1 PC MAR RAM IR CON A ADD B O D
4 8 Cp CLK CLR Ep 12 Bus W ARSITEKTUR SAP-1 IR < Instruction Register > Bagian unit kendali untuk mengambil sebuah instruksi dari memori. Isi lokasi memori yang ditunjuk ditempatkan pada bus W dan pada tepi positif, IR mulai pengisian Isi IR dibagi 2 Nibble : Nibble Atas : ke pengendali / Pengurut Nibble Bawah : dikirim ke bus W
6
ARSITEKTUR SAP-1 PC MAR RAM IR CON A ADD B O D Pengendali / Pengurut
4 8 Cp CLK CLR Ep 12 Bus W ARSITEKTUR SAP-1 Pengendali / Pengurut Sebelum komputer bekerja, CLR dikirim ke PC < direset ke 0000 > dan CLR ke IR (Instruksi terakhir dihapus) CLK dikirim ke semua register buffer untuk sinkronisasi operasi komp. CLK ke PC untuk menjamin PC telah menyiapkan alamat berikutnya. Mengeluarkan 12 bit sinyal kendali < control bus >
7
ARSITEKTUR SAP-1 PC A MAR ADD RAM B IR O CON D Accumulator
Bus W Cp 8 ARSITEKTUR SAP-1 Accumulator Buffer yang menyimpan jawaban sementara selama beroperasi. Keluaran 2-state ke ADDER Keluaran 3-state ke Bus W Bila tinggi, maka terus menerus menggerakkan ADDER PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
8
ARSITEKTUR SAP-1 PC A MAR ADD RAM B IR O CON D Penjumlah - Pengurang
Bus W Cp 8 ARSITEKTUR SAP-1 Penjumlah - Pengurang SAP-1 mempunyai sebuah Penjumlah – Pengurang komplemen 2. Su rendah, keluaran: S=A+B Su tinggi, keluaran : S=A-B Rangkaian Penjumlah – Pengurang bersifat Asinkron < tidak diatur oleh clock > Bila tinggi, maka keluaran penjumlah-pengurang muncul pada bus W. PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
9
ARSITEKTUR SAP-1 PC A MAR ADD RAM B IR O CON D Register B
Bus W Cp 8 ARSITEKTUR SAP-1 Register B Buffer untuk operasi Aritmatik. Bila rendah, maka kata pada bus W diisikan ke register B pada tepipositif clock. Keluaran 2-state menjalankan penjumlah-pengurang. Register Keluaran Memindahkan jawaban pada Acc ke keluaran Bila tinggi dan rendah, maka akan memasukkan isi A pada register keluaran pada tepi positif clock PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
10
ARSITEKTUR SAP-1 PC A MAR ADD RAM B IR O CON D Peraga Biner
Bus W Cp 8 ARSITEKTUR SAP-1 Peraga Biner Barisan 8 LED untuk menampilkan isi dari bandar keluaran. PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
11
Perangkat Instruksi < Instruction Set >
Operasi dasar yang dapat dilakukan dengan perintah / program. LDA < Load Data Accumulator > Isi Akumulator dengan isi dari lokasi memori Kata didalam memori dapat diberikan simbol R0, R1, R2 Artinya : R0 untuk alamat 0H R1 untuk alamat 1H dst Contoh : LDA 8H ; /* Isikan Akumulator dengan isi alamat 8H */ Misal: R8= , maka eksekusi perintah ini menghasilkan A =
12
Perangkat Instruksi < Instruction Set >
ADD Tambahkan isi lokasi memori pada Accumulator Contoh : ADD 9H ; /* Tambahkan Akumulator dengan isi alamat 9H */ Jika : A = ; /* Isi Akumulator */ R9 = ; /* isi memori 9H */ maka eksekusi perintah ini, membuat isi memori 9H < R9 > diisikan ke Register B B = Saat yang sama, penjumlah-pengurang menjumlahkan A dan B SUM=
13
Perangkat Instruksi < Instruction Set >
SUB Kurangkan isi lokasi memori dari Accumulator Contoh : SUB CH ; /* Kurangkan Akumulator dengan isi alamat CH */ Jika : A = ; /* Isi Akumulator */ Rc = ; /* isi memori CH */ maka eksekusi perintah ini, membuat isi memori CH < Rc > diisikan ke Register B B = Saat yang sama, penjumlah-pengurang mengurangkan A - B DIFF= ; /* Hasilnya disimpan dalam Akumulator */
14
Perangkat Instruksi < Instruction Set >
OUT Memberitahu komputer SAP-1 untuk memindahkan isi Akumulator ke bandar keluaran Instruksi OUT tidak memerlukan alamat tertentu Instruksi OUT tidak berhubungan dengan data dalam memori HLT Memberitahu Komputer untuk menghentikan proses Akhir dari Program
15
Instruksi Rujukan Memori < Memory Reference Instruction >
Instruksi yang memerlukan lokasi memori tertentu LDA, ADD dan SUB MNEMONIC Instruksi singkat (in English) untuk membantu ingatan Mudah diingat dan sesuai dengan operasi yang dilakukan
16
Program SAP-1 dalam bentuk Mnemonic
Contoh : Program SAP-1 dalam bentuk Mnemonic ALAMAT MNEMONIC 0 H LDA 9 H 1 H ADD AH 2 H ADD BH 3 H SUB CH 4 H OUT 5 H HLT 6 H FFH 7 H FFH 8 H FFH 9 H 01H A H 02H B H 03H C H 04H
17
Pemrograman SAP-1 Untuk memasukkan instruksi dan data ke dalam memori SAP-1 harus mmenggunakan kode tertentu yang dimengerti komputer. Kode ini memberitahu operasi yang harus dilakukan Operation Code < Op-Code> Mnemonic Op-Code Contoh : LDA Alamat Instruksi ADD H LDA FH SUB H ADD EH OUT H OUT HLT H HLT
18
Pemrograman SAP-1 Contoh : Alamat Instruksi 0 H LDA FH = 0000 1111
1 H ADD EH = 2 H OUT = 1110 XXXX 3 H HLT = 1111 XXXX Medan Alamat Medan Instruksi
19
Pemrograman SAP-1 Assembly Language : tatacara penulisan program dalam mnemonic < Source Program > Machine Language : tatacara penulisan program dalam binary < Object Program > Contoh : Alamat Instruksi Alamat Instruksi 0 H LDA 9H 1 H ADD AH 2 H OUT XXXX 3 H HLT XXXX Source Program Object Program
20
Siklus Pengambilan < Fetch Cycle >
Unit kendali membangkitkan kata kendali untuk mengambil dan melaksanakan setiap instruksi. Setiap instruksi melewati beberapa keadaan pewaktuan < timing-state> Tstate = Keadaan T = periode-periode waktu pada saat mana terjadi perubahan isi register Tstate menggunakan pencacah putar T = T6T5T4T3T2T1
21
Siklus Pengambilan < Fetch Cycle >
Tstate menggunakan pencacah putar T = T6T5T4T3T2T1 Awal operasi kata T menunjukkan : T = Pada pulsa detak berikutnya menghasilkan T = T = T = T = T = Pencacah Putar CLK CLR T6T5T4T3T2T1
22
Siklus Pengambilan < Fetch Cycle > Diagram Pewaktuan
Tepi positif CLK terjadi pada pertengahan setiap keadaan T CLK T1 T2 T3 T4 T5 T6
23
Siklus Pengambilan < Fetch Cycle > Keadaan alamat
Keadaan T1 : keadaan alamat, krn alamat didalam PC dipindahkan ke MAR dan merupakan bit-bit aktif sedangkan semua bit kendali yang lain tidak aktif Keadaan Penambahan Keadaan T2 : keadaan penambahan < Increment State > karena hitungan pada PC ditingkatkan merupakan bit aktif pada keadaan T2
24
Siklus Pengambilan < Fetch Cycle >
Keadaan Memori Keadaan T3 : Keadaan memori krn instruksi pada RAM dengan alamat yang ditunjuk dipindahkan dari memori ke register instruksi dan merupakan bit-bit aktif pada keadaan ini.
25
Siklus Pengambilan < Fetch Cycle > Keadaan T1 PC A
Bus W Cp 8 Siklus Pengambilan < Fetch Cycle > Keadaan T1 PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
26
Siklus Pengambilan < Fetch Cycle > Keadaan T2 PC A
Bus W Cp 8 Siklus Pengambilan < Fetch Cycle > Keadaan T2 PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
27
Siklus Pengambilan < Fetch Cycle > Keadaan T3
Bus W Cp 8 Siklus Pengambilan < Fetch Cycle > Keadaan T3 Ketika dan aktif, RAM siap mengirimkan data yang ditunjukkan oleh MAR ke bus W pada saat yang sama IR mengambilnya. PC A CLK 4 CLK CLR 8 Ep 8 MAR ADD 4 8 CLK 4 4 8 RAM B 8 8 CLK 8 IR CLK O CLR 4 8 CLK 4 8 CLK CON CLK D CLR CLR 12
28
Siklus Eksekusi < Execution Cycle >
Siklus pelaksanaan terjadi pada T4, T5 dan T6 Transfer-transfer register yang terjadi bergantung pada Instruksi yang dieksekusi. Rutin LDA Jika IR telah diisi dengan LDA 9H, maka : IR = Selama T4 : medan instruksi dikirim ke pengendali yang melakukan pendekodean dan medan alamat diisikan ke dalam MAR dan adalah bit aktif pada T4
29
Siklus Eksekusi < Execution Cycle >
Selama T5 : data yang ditunjuk dalam memori akan dikirimkan ke dalam Akumulator. dan adalah bit aktif pada T5 T6 adalah keadaan tanpa operasi (No-Operation / NOP) Selama T6, semua register dalam keadaan tidak Aktif
30
Diagram Pewaktuan untuk Rutin LDA
CLK
31
Siklus Eksekusi < Execution Cycle >
Rutin ADD Jika akhir siklus Fetch IR berisi kata ADD AH, maka : IR = Selama T4 : medan instruksi dikirim ke pengendali yang melakukan pendekodean dan medan alamat diisikan ke dalam MAR dan adalah bit aktif pada T4
32
Siklus Eksekusi < Execution Cycle >
Selama T5 : data yang ditunjuk dalam RAM disiapkan untuk dikirimkan ke dalam Register B. Dan pengisian Register B terjadi pada tepi positif clock dan adalah bit aktif pada T5 Selama T6 : bagian Penjumlah-pengurang menyiapkan Akumulator. Dan pengisian hasil jumlahan ke Akumulator terjadi pada tepi positif clock. dan adalah bit aktif pada T6
33
Diagram Pewaktuan untuk Rutin ADD
CLK
34
Diagram Pewaktuan untuk Rutin SUB
CLK
35
Siklus Eksekusi < Execution Cycle >
Rutin OUT Jika akhir siklus Fetch IR berisi kata OUT, maka : IR = XXXX Selama T4 : medan instruksi dikirim ke pengendali yang melakukan pendekodean dan Pengendali mengeluarkan kata kendali untuk memindahkan isi Akumulator ke register Keluaran. dan adalah bit aktif pada T4 Pada keadaan T5 dan T6 tidak terjadi Operasi (NOP)
36
Siklus Eksekusi < Execution Cycle >
Rutin HLT Jika akhir siklus Fetch IR berisi kata HLT, maka : IR = XXXX Medan instruksi dikirim ke pengendali yang melakukan pendekodean dan Pengendali mengeluarkan kata kendali untuk menghentikan operasi komputer dengan menghentikan clock. Tidak membutuhkan rutin kendali.
37
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
38
MIKROPROGRAM SAP-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) Makro Keadaan CON yang Aktif LDA T A3H T C3H T E3H Tidak Ada
39
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.
40
ROM KENDALI Alamat Isi Rutin Bit Aktif 0H 5E3H Fetch 1H BE3H 2H 263H 3H 1A3H LDA 4H 2C3H 5H 3E3H Tidak Ada 6H 1A3H ADD 7H 2E1H 8H 3CFH
41
::. Terima Kasih .::
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.