TUGAS 3 ARSITEKTUR DAN ORGANISASI KOMPUTER
ARSITEKTUR DAN ORGANISASI KOMPUTER
Struktur
Detail Dari komputer IAS
Komputer
IAS (Institute for Advanced Study) adalah salah satu komputer pertama yang
dirancang oleh John von Neumann pada tahun 1945. Komputer ini dianggap sebagai
cikal bakal arsitektur komputer modern yang banyak digunakan saat ini, dikenal
sebagai Arsitektur Von Neumann. Struktur dari komputer IAS melibatkan beberapa
komponen utama yang bekerja bersama untuk menjalankan perhitungan dan
pemrosesan data.
- - Berikut
adalah detail struktur dari komputer IAS:
1.
Memori
(Memory)
Memori
komputer IAS terdiri dari unit penyimpanan yang digunakan untuk menyimpan
instruksi dan data yang akan diproses. Memori ini dibagi menjadi dua jenis
utama:
·
Memori
untuk instruksi: Menyimpan program yang akan dijalankan.
·
Memori
untuk data: Menyimpan data yang diperlukan selama eksekusi program.
Memori
ini bersifat terprogram (programmable), yang artinya instruksi dapat disimpan
dan dimodifikasi.
2.
Unit
Pengendali (Control Unit)
Unit
pengendali bertanggung jawab untuk mengambil instruksi dari memori,
men-decode-nya, dan mengarahkan eksekusi sesuai dengan instruksi tersebut.
Fungsi utamanya adalah:
·
Mengambil
instruksi dari memori.
·
Men-decoding
instruksi untuk memahami tindakan yang diperlukan.
·
Mengarahkan
aliran data antara komponen-komponen lain berdasarkan instruksi yang
dijalankan.
3.
Unit
Aritmatika dan Logika (Arithmetic and Logic Unit / ALU)
ALU adalah bagian yang melakukan perhitungan aritmatika (seperti penjumlahan, pengurangan, perkalian, dan pembagian) serta operasi logika (seperti AND, OR, NOT). ALU bekerja dengan data yang disimpan di memori atau diterima dari input lainnya. Ini merupakan bagian penting dalam pemrosesan data.
4.
Register
Komputer
IAS menggunakan register untuk menyimpan data sementara yang digunakan selama
pemrosesan. Register ini menyimpan nilai sementara, hasil perhitungan, atau
alamat memori untuk instruksi selanjutnya. Beberapa register utama dalam
komputer IAS adalah:
·
Accumulator
(AC): Digunakan untuk menyimpan hasil perhitungan aritmatika.
·
Program
Counter (PC): Menyimpan alamat dari instruksi berikutnya yang akan dieksekusi.
·
Memory
Buffer Register (MBR): Menyimpan data yang baru saja diambil dari atau akan
ditulis ke memori.
·
Memory
Address Register (MAR): Menyimpan alamat memori yang sedang diakses.
5.
Input
dan Output (I/O)
Komputer
IAS juga dilengkapi dengan perangkat input dan output untuk berinteraksi dengan
dunia luar. Data dapat dimasukkan melalui input (seperti punch cards, keyboard,
dll.), dan hasilnya dikeluarkan melalui output (seperti printer, layar, dll.).
6. Bus
Bus adalah jalur komunikasi yang menghubungkan berbagai komponen di dalam
komputer IAS. Ada tiga jenis bus utama:
· Bus alamat: Mengangkut alamat memori
yang akan diakses.
· Bus data: Mengangkut data yang
diproses antara memori, ALU, dan register.
· Bus kontrol: Mengontrol aliran data
dan instruksi antar komponen, mengatur kapan instruksi diambil atau data
diproses.
7. Instruksi dan
Eksekusi
Komputer IAS bekerja dengan set
instruksi tertentu yang berfungsi untuk mengontrol proses perhitungan dan
eksekusi. Set instruksi tersebut terdiri dari instruksi yang dapat melakukan
operasi aritmatika, logika, transfer data, dan pengontrolan aliran eksekusi.
8. Langkah-Langkah Eksekusi Instruksi
(Cycle)
Proses eksekusi instruksi di komputer IAS dilakukan dalam beberapa
langkah yang dikenal sebagai fetch-decode-execute cycle:
· Fetch: Instruksi diambil dari memori
menggunakan alamat yang disimpan di Program Counter (PC).
· Decode: Instruksi tersebut di-decode
oleh unit kontrol untuk menentukan apa yang harus dilakukan.
· Execute: Operasi yang ditentukan oleh
instruksi tersebut dijalankan oleh ALU atau perangkat lainnya, dan hasilnya
disimpan kembali ke memori atau register.
Metode Untuk Mengatasi Perbedaan Perkembangan Antara Processor Dengan Komponen
Komputer Lainnya
Perbedaan perkembangan antara prosesor dengan komponen komputer lainnya,
seperti memori, perangkat input/output (I/O), dan komponen lainnya, sering kali
menyebabkan ketidakseimbangan dalam kinerja sistem komputer secara keseluruhan.
Prosesor, sebagai pusat pemrosesan, sering berkembang lebih cepat dibandingkan
dengan komponen lainnya.
- - Ada beberapa metode dan teknik yang diterapkan dalam desain dan
pengembangan sistem komputer:
1. Cache Memory
Cache memory adalah jenis memori yang sangat cepat yang digunakan untuk
menyimpan data dan instruksi yang sering digunakan oleh prosesor. Cache
berfungsi sebagai penampung sementara antara prosesor dan memori utama,
sehingga prosesor dapat mengakses data lebih cepat tanpa harus menunggu akses
ke memori yang lebih lambat. Dengan adanya cache, meskipun memori utama
berkembang lebih lambat daripada prosesor, kinerja sistem tetap optimal.
· Level Cache (L1, L2, L3): Cache dibagi
menjadi beberapa level, dari L1 yang lebih kecil dan lebih cepat, hingga L3
yang lebih besar tetapi lebih lambat. Ini membantu prosesor untuk mengakses
data dengan lebih efisien.
2. Peningkatan Bandwidth Memori
Salah satu alasan mengapa prosesor dapat berkembang lebih cepat
dibandingkan komponen lainnya adalah keterbatasan bandwidth memori. Untuk
mengatasi masalah ini, ada beberapa pendekatan yang dilakukan:
· Memori Multi-Channel: Menggunakan
beberapa saluran komunikasi untuk memori yang memungkinkan akses data lebih
cepat.
· Memori DDR (Double Data Rate): Jenis
memori ini dapat mentransfer data lebih cepat dengan menggunakan kedua tepi
sinyal (rising dan falling edges).
· Memori GDDR (Graphics Double Data Rate):
Digunakan di kartu grafis, memiliki bandwidth yang lebih tinggi dibandingkan
memori standar.
3. Pipelining dan Superscalar
Untuk meningkatkan throughput prosesor dan memanfaatkan instruksi secara
lebih efisien, teknik seperti pipelining dan superscalar digunakan.
· Pipelining: Memecah eksekusi instruksi
menjadi beberapa tahap yang dapat dijalankan secara paralel. Hal ini
memungkinkan prosesor untuk mengeksekusi beberapa instruksi sekaligus dalam
satu siklus.
· Superscalar: Prosesor yang mampu
mengeksekusi lebih dari satu instruksi dalam satu siklus jam, dengan memiliki
beberapa unit eksekusi untuk instruksi yang berbeda. Ini membantu prosesor
untuk mengurangi keterlambatan karena ketidakseimbangan antara prosesor dan
memori.
4. Memori Terintegrasi (On-chip Memory)
Prosesor modern sering dilengkapi dengan memori terintegrasi (on-chip
memory) untuk mengurangi latensi yang disebabkan oleh akses ke memori
eksternal. Contohnya adalah memori SRAM yang terpasang langsung pada chip
prosesor. Dengan mengurangi ketergantungan pada memori utama, prosesor dapat
mengakses data lebih cepat, mengurangi perbedaan kecepatan antara prosesor dan
memori.
5. Direct Memory Access (DMA)
Direct Memory Access (DMA) adalah teknik di mana perangkat I/O dapat
mengakses memori langsung tanpa melibatkan prosesor. Ini mengurangi beban kerja
pada prosesor dan meningkatkan efisiensi sistem secara keseluruhan. DMA
memungkinkan perangkat untuk mentransfer data ke memori tanpa intervensi
prosesor, sehingga mengurangi bottleneck antara prosesor dan I/O.
6. Parallelism dan Multithreading
Untuk mengatasi ketidakseimbangan antara perkembangan prosesor dan
komponen lainnya, banyak sistem modern mengadopsi arsitektur paralelisme dan multithreading.
Teknik-teknik ini memungkinkan prosesor untuk menjalankan beberapa tugas
sekaligus (paralel), atau menjalankan beberapa thread dalam satu prosesor
(multithreading).
· Parallelism: Membagi pekerjaan menjadi
beberapa bagian yang dapat dieksekusi secara bersamaan oleh beberapa prosesor
atau core.
· Multithreading: Memungkinkan satu core prosesor untuk menjalankan beberapa thread eksekusi secara simultan, meningkatkan pemanfaatan prosesor yang lebih efisien meskipun komponen lainnya tidak berkembang secepat prosesor.
7. Sistem Cache Hierarki dan Prefetching
Untuk memitigasi keterlambatan dalam pengambilan data dari memori, banyak prosesor modern menggunakan prefetching dan cache hierarki. Prefetching adalah teknik di mana prosesor mencoba untuk memprediksi data yang mungkin dibutuhkan di masa depan dan memuatnya ke dalam cache lebih awal. Cache hierarki, dengan beberapa level cache, membantu meminimalkan waktu akses antara prosesor dan memori.
8. Penggunaan FPGA dan ASIC
Field-Programmable Gate Arrays (FPGA) dan Application-Specific Integrated Circuits (ASIC) digunakan untuk mempercepat komputasi tertentu yang sangat spesifik, misalnya dalam aplikasi yang memerlukan pengolahan data besar atau pengolahan grafis. Dengan menggunakan FPGA atau ASIC, dapat mengurangi ketergantungan pada CPU utama dan menyeimbangkan beban kerja.
9.Arsitektur Heterogen (Heterogeneous Computing)
Pendekatan ini menggunakan berbagai jenis prosesor atau unit pemrosesan,
seperti CPU, GPU, dan akselerator lainnya, yang bekerja bersama-sama. GPU
(Graphics Processing Unit), misalnya, dapat digunakan untuk melakukan komputasi
paralel yang sangat efisien pada tugas-tugas tertentu, seperti rendering grafis
atau pembelajaran mesin, sementara CPU menangani tugas-tugas yang lebih umum.
Perbedaan Utama Teknologi CISC dan RIS
1. Teknologi CISC (Complex Instruction Set Computing)
CISC adalah arsitektur prosesor yang memiliki set instruksi kompleks, yang memungkinkan satu instruksi melakukan beberapa operasi sekaligus, seperti memindahkan data, melakukan perhitungan, dan mengakses memori dalam satu langkah.
a. a. Karakteristik Utama CISC:
1.
Set Instruksi yang Lebih Banyak: CISC memiliki banyak instruksi dengan
berbagai macam fungsionalitas. Satu instruksi dalam CISC bisa melakukan
beberapa operasi seperti pegambilan data dari memori, operasi aritmatika, dan
lainnya.
2.
Instruksi Panjang: Instruksi dalam CISC bisa memiliki panjang yang
bervariasi dan lebih kompleks. Ini berarti satu instruksi bisa memerlukan lebih
banyak waktu untuk dieksekusi, karena memerlukan banyak tahapan untuk diproses.Lebih
Sedikit Instruksi untuk Menulis Program: Dengan set instruksi yang lebih
kompleks, CISC memungkinkan programmer untuk menulis program dengan lebih
sedikit baris kode, karena satu instruksi dapat melakukan beberapa operasi.
3.
Pengaksesan Memori Lebih Komplek: Instruksi CISC biasanya bisa langsung
mengakses memori sebagai bagian dari eksekusi instruksi. Artinya, instruksi
bisa mengambil data dari memori dan melakukan operasi dalam satu langkah.
4.
Kinerja Lebih Lambat dalam Beberapa Kasus: Karena instruksi CISC sering
lebih kompleks, eksekusi setiap instruksi bisa memerlukan lebih banyak siklus
clock, yang mungkin lebih lambat.
b.
Contoh:
1.
Intel x86 dan Motorola 68k adalah contoh arsitektur CISC yang terkenal.
2. Teknologi RISC (Reduced Instruction Set Computing)
RISC, di sisi lain, adalah arsitektur prosesor yang dirancang dengan set instruksi yang lebih sederhana dan lebih sedikit. Instruksi dalam RISC lebih efisien, dengan tujuan membuat prosesor lebih cepat dalam mengeksekusi instruksi.
a. a. Karakteristik Utama RISC:
1. Set Instruksi yang Lebih Sederhana:
RISC menggunakan instruksi yang lebih sedikit dan sederhana. Setiap instruksi
biasanya hanya melakukan satu operasi dasar, seperti memindahkan data antar
register atau melakukan operasi aritmatika sederhana.
2. Instruksi dengan Panjang yang Tetap:
Instruksi pada arsitektur RISC memiliki panjang yang seragam dan sederhana,
memudahkan eksekusi yang cepat dan pengoptimalan.
3. Instruksi yang Memerlukan Lebih Banyak
Baris Kode: Karena setiap instruksi RISC melakukan satu operasi sederhana,
program yang ditulis dalam RISC biasanya membutuhkan lebih banyak instruksi
dibandingkan dengan CISC.
4. Pengaksesan Memori Terpisah dari
Instruksi: RISC cenderung memisahkan instruksi memori (load dan store) dari
operasi aritmatika. Artinya, untuk mengakses data dari memori, perlu ada
instruksi terpisah.
5. Peningkatan Kecepatan Eksekusi: Karena instruksi RISC lebih sederhana, prosesor RISC cenderung lebih cepat dalam mengeksekusi instruksi per siklus clock. Ini membuatnya lebih efisien dalam beberapa kasus.
a. Contoh:
1. ARM dan MIPS adalah contoh arsitektur
RISC yang terkenal.




Komentar
Posting Komentar