Anda di halaman 1dari 11

LAPORAN AKHIR PRAKTIKUM

ORGANISASI DAN ARSITEKTUR KOMPUTER


MODUL I
IMPLEMENTASI PROSESOR SEDERAHANA I

Nama : Gian Noval Havillah


No. BP : 1811511007
Hari/Tanggal : Selasa / 22 Maret 2021
Shift : 1

LABORATORIUM SISTEM DIGITAL DAN ARSITEKTUR KOMPUTER


JURUSAN TEKNIK KOMPUTER
FAKULTAS TEKNOLOGI INFORMASI
UNIVERSITAS ANDALAS
PADANG
2021
BAB I
PENDAHULUAN

1.1 Tujuan
1.1.1 Praktikan dapat merancang prosesor dari Bahasa assembly ke Bahasa
mesin dengan penambahan instruksi.
1.1.2 Praktikan dapat mengimplementasikan prosesor dengan Verilog (IF &
ID part).
1.2 Landasan Teori
1.2.1 Prosesor Sederhana
Organisasi sebuah komputer sederhana yang berorientasi pada Central
Processing Unit (CPU) yang merupakan otak dari sebuah komputer.
Fungsi CPU adalah menjalankan programprogram yang disimpan
dalam memori utama dengan cara mengambil instruksiinstruksi,
menguji instruksi tersebut, dan kemudian menjalankannya satu demi
satu. Komponenkomponen itu dihubungkan oleh sebuah bus, yaitu
sekumpulan kabel-kabel pararel untuk mentransmisikan alamat
(address), data, dan sinyalsinyal kontrol. Berikut Terminal bus dari
CPU.

(Gambar 1 Terminal Bus Prosesor Sederhana)

Komponen dari CPU yaitu Register, Control Unit, ALU dan I/O
Interconnection. Register ialah Alat penyimpanan kecil yang
mempunyai kecepatan akses cukup tinggi yang digunakan untuk
menyimpan data dan instruksi yang sedang diproses sementara data
dan instruksi lainnya
menunggu giliran untuk diproses masih disimpan di dalam memori
utama. Control Unit ialah bertugas mengatur dan mengendalikan
semua peralatan yang ada di sistem komputer seperti mengatur dan
mengendalikan alat-alat input dan output, mengambil instruksi-
instruksi dari memori utama, mengambil data dari memori utama
untuk diproses dan sebagainya. Kemudian ALU ialah Tugas utama
adalah melakukan semua perhitungan aritmatika dan melakukan
keputusan dari suatu operasi logika. Dan I/O Interconection ialah
sistem koneksi yang menghubungkan antar komponen internel dalam
sebuah CPU, yaitu ALU, unit kontrol, dan register serta
menghubungkan CPU dengan bus-bus eksternal diluar CPU.

1.2.2 Instruksi Mesin


Setiap instruksi harus terdiri dari informasi yang diperlukan oleh CPU
untuk dieksekusi. bentuk elemen-elemen instruksi mesin, adalah
sebagai berikut :
 Kode Operasi : menentukan operasi-operasi yang akan
dilakukan (misalnya: ADD,I/O). Operasi itu dispesifilan oleh
sebuah kode biner, dikenal sebagai kode operasi.
 Operand Sumber : Operasi dapat melibatkan satu atau lebih
operand sumber, dengan kata lain, operand adalah input bagi
operasi.
 Operand Hasil: Operasi dapat menghasilkan sebuah hasil.
 Acuan Instruksi Berikutnya: Elemen ini memberitahukan CPU
posisi instruksi berikutnya yang harus diambil setelah
menyelesaikan eksekusi suatu instruksi.
Di dalam komputer, instruksi dipresentasikan oleh sehimpunan bit.
Himpunan bit ini dibagi menjadi beberapa bidang, dengan bidang-
bidang ini berkaitan dengan elemen-elemen yang akan memuat
instruksi. Layout instruksi ini dikenal sebagai bentuk instruksi.
Opcode direpresentasikan dengan singkatan-singkatan, yang
disebut mnemorik, yang mengindikasikan operasi seperti berikut
ini.
 ADD Add (Menambahkan)
 SUB Substract (Pengurangan)
 MPY Multiply (Perkalian)
 DIV Divide (Pembagian0
 LOAD Muatkan data data dari memori
 STOR Simpan data ke memori

1.2.3 Jumlah Alamat


Salah satu cara tradisional dalam menjelaskan arsitektur prosesor
adalah dengan memakai jumlah alamat yang terdapat pada masing-
masing instruksi. Instruksi aritmatika dan logika memerlukan operand
yang berjumlah banyak. Dengan demikian, instruksi perlu memiliki
empat buah acuan alamat: dua buah operand, sebuah hasil operasi, dan
sebuah alamat instruksi berikutnya. Sebagian besar CPU merupakan
variasi satu, dua, atau tiga alamat dengan alamat instruksi berikutnya
merupakan implisit (diperoleh dari pencacah program). Format tiga
alamat tidak umum digunakan, karena instruksi-instruksi tersebut
memerlukan bentuk instruksi yang lebih relatif lebih panjang untuk
menampung acuan-acuan tiga alamat. Sedangkan bentuk dua alamat
mengurangi kebuatuahan ruang akan tetapi menimbulkan kesulitan.
Instruksi yang lebih sederhana adalah instruksi satu alamat. Agar
alamat ini dapat berfungsi, alamat perlu diimplisitkan.
BAB II
PROSEDUR KERJA

2.1 Alat dan Bahan


2.1.1 PC / Laptop
2.1.2 Aplikasi Modelsim
2.2 Cara Kerja
2.2.1 Merancang bahasa mesin
1 Diberikan soal untuk merancang Bahasa mesin yaitu
X = (3+4+2) – (6+1)
2 Lalu mulai rancang dengan memasukan ke register, dimana
merancang dilakukan pada operasi kurung pertama dari angka
paling belakang hingga kedepan, didapatkan sebagai berikut
addi R0,2. R0 = 2
addi R0,4. R0 = R0+4 (4+2)
addi R0,3. R0 = R0+3 (3+4+2)
3 Kemudian selanutnya merancang Kembali operasi dikurung
kedua dan rancangan dimulai dari belakang Kembali,
didapatkan rancangan sebagi berikut.
addi R1,1. R1 = 1
addi R1,6. R1 = R1 + 6 (6+1)
4 Selanjutnya dilakukan oeprasi dari rancangan yang ada.
Rancangan tersebut menggunakan operasi kurang, didapatkan
hasil sebagai berikut.
sub R0,R1. R0 = R0(3+4+2)-R1(6+1)
5 Dan terakhir ubah nilai yang ada kedalam Opcode Prosesor
Sederhana untuk mendapatkan bahasa mesin dari setiap
bilangan, didapatkan hasil sebagai berikut.
10000010
10000100
10000011
10000001
10001001
001000001
6 Merancang Bahasa mesin telah selesai dilakukan.

2.2.2 Implementasi Prosesor Dengan Verilog (IF & ID part)


1 Siapkan source code yang telah diberikan
2 Pada file dengan nama file “program.txt”, ganti program yang
ada pada file tersebut dengan Bahasa mesin yang telah
dirancang sebelumnya.
10000010
10000100
10000011
10000001
10001001
001000001
3 Jalankan program pada aplikasi Modelsim
4 Compile file source code dengan nama “pc.v”, “RAM.v”, dan
“instructionDecoder.v” menggunakan aplikasi Modelsim
5 Lalu Simulate file secara satu per Satu
6 Kemudian amati program yang telah disimulasikan
7 Selanjutnya compile file dengan nama “simpleMIPS.v” dan
lanjutkan topLevel MIPS ini sesuai dengan gambar di bawah
ini.

(Gambar 2 Toplevel Instruction Fetch and Instruction Decoder)


8 Jalankan test bench mipsTB.v, dan perhatikan keluaran dari
instructiopn decoder.
BAB III
PEMBAHASAN DAN ANALISA
BAB IV
PENUTUP
5.1 Kesimpulan
1 Central Processing Unit (CPU) yang merupakan otak dari sebuah
komputer
2 Komponen dari CPU yaitu Register, Control Unit, ALU dan I/O
Interconnection.
3 Setiap instruksi harus terdiri dari informasi yang diperlukan oleh CPU
untuk dieksekusi. bentuk elemen-elemen instruksi mesin.
4 Salah satu cara tradisional dalam menjelaskan arsitektur prosesor adalah
dengan memakai jumlah alamat yang terdapat pada masing-masing
instruksi.

5.2 Saran
1 Bagi praktikan diharapkan membaca dan memahami modul sebelum
memulai praktikum.
2 Praktikan diharapkan memperhatikan hal yang terkait pada isi modul
saat percobaan praktikum berlangsung.
3 Praktikan diharapkan dapat mengatur waktu sebaik mungkin saat
prkatikum berlangsung
TUGAS TAMBAHAN
1 Jelaskan proses instruction fetch dan instruction decoding secara rinci
2 Jelaskan ada berapa immediate yang dapat disupport oleh prosesor ini, dan
bagaimana cara meningkatkannya sehingga prosesor dapat mensupport
immediate lebih banyak)
3 Pada prosesor ini apa yang harus dikerjakan oleh immediate extend nantinya.

Jawab
1 Proses instruction fetch dan instruction decoding.
Fetch merupakan peristiwa pengambilan perintah dan data yang diperlukan.
Fetch merupakan proses mengambil atau membawa instruksi dari memori
utama ke CPU. Data yang digunakan oleh suatu instruksi sudah termasuk di
dalamnya, sedangkan dalam beberapa kasus lain, suatu instruksi langsung
menunjukkan alamat dimana data yang akan diproses berada. Lokasi dimana
alamat data yang akan diproses berada tersebut dengan address. Sebuah
instruksi sebenarnya terdiri dari dua bagian, dimana bagian pertama
merupakan aksi yang akan dijalankan yang disebut dengan opcode, dan
bagian kedua adalah data yang akan dikerjakan yang disebut dengan operand.
Decoding adalah proses dimana penerima menafsirkan pesan dan
menterjemahkan menjadi informasi yang berarti baginya. Jika semakin tepat
penafsiran penerima terhadap pesan yang dimaksudkan oleh penerima, Maka
semakin efektif komunikasi yang terjadi. Decoding juga dapat didefisikan
sebagai tahapan dimana instruksi akan di terjemahkan (interpret) ke dalam
perintah-perintah bahasa mesin dasar (ADD, SB, MBA, STA, JMP, dll).
Proses ini dilakukan oleh instruction decoder. Fase eksekusi akan di pulsa
clock berikutnya. Jika instruksi memiliki alamat tidak langsung , alamat
efektif dibaca dari memori utama, dan setiap data yang dibutuhkan diambil
dari memori utama untuk diolah dan kemudian ditempatkan ke dalam register
data
2 Terdapat 4 Immediate yang dapat disupport oleh prosesor ini, karena opcode
hanya bernilai 3 bit. Cara meningkatkannya ialah dengan cara prosesor yang
memiliki lebar data, instruksi dan lebar alamat yang bernilai besar. Semakin
besar nilainya maka semakin banyak register yang ada pada prosesor.
3 Pada prosesor ini immediate extend akan melakukan konversi panjang data
immediate dari instruksi menjadi sama dengan panjang struktur data Prosesor.
DAFTAR PUSTAKA

[1]Rizha. "Prosessor" [Online]. Tersedia :


https://web.unhas.ac.id/rhiza/arsip/kuliah/prosessor. Teknik Komputer dan
Jaringan, Universitas Hasanuddin [Diakses pada 27 Maret 2021 pukul 13.27 WIB]

[2]Erwin dkk. "Arsitektur Komputer" [Online]. Tersedia :


https://repository.dinus.ac.id/docs/ajar/Arsitektur_Komputer. Universitas
Gunadarma [Diakses pada 27 Maret 2021 pukul 14.10 WIB]

[3]Azis, Muhammad. "Set Instruksi dalam Organisasi dan Arsitektur Komputer".


24 April 2020 [Online]. Tersedia : https://mkazis.medium.com/2-xxii-set-
instruksi-dalam-organisasi-dan-arsitektur-komputer-dc24c18ea26c.[Diakses pada
27 Maret 2021 pukul 14.33 WIB]

Anda mungkin juga menyukai