RESUME : ARSITEKTUR DAN ORGANISASI KOMPUTER
CHAPTER I
Pendahuluan
- Arsitektur komputer berkaitan dengan atribute-atribute yang nampak bagi programmer. Misalnya Set Intruksi, jumlah bit yang digunakan untuk penyajian data, mekanisme I/O, dsb.
- Organisasi komputer berkaitan dengan unit unit operasional dan interkoneksinya yang merealisasikan spesifikasi arsitektural. Misalnya Control signals, interfaces, memory technology, dsb.
Struktur dan Fungsi Komputer
2) Sementara Fungsi komputer merupakan operasi dari masing-masing komponen sebagai bagian dari struktur komputer tersebut.
Fungsi Komputer
- Pengolahan data / Data processing
- Penyimpanan data / Data storage
- Pemindahan data / Data movement
- Kendali / Control
CHAPTER II
InterConnect Bus Sistem
Konsep Program
Fungsi Control Unit
- Untuk setiap operasi disediakan kode yang unik. Contoh : ADD, MOVE, dsb.
- Bagian hardware tertentu menerima kode tersebut kemudian menghasilkan sinyal-sinyal kendali.
- Lalu jadilah sebuah operasi komputer.
Siklus Intruksi
Interupsi
2) Processor memeriksa adanya interupsi,
3) Jika tidak terdapat interupsi, fetch next instruction (lanjut instruksi selanjutnya).
4) Jika terdapat interupsi :
- Tunda eksekusi program saat ini,
- Simpan 'konteks',
- Set PC ke awal address dari routine interrupt handler,
- Memulai proses interupsi,
- Setelah selesai, kembalikan 'konteks' dan lanjutkan program yang terhenti.
BUS
- Data Bus akan membawa data dari sebuah Bus. Lebar jalur pada Data Bus memengaruhi performance dari Bus.
- Address Bus akan menentukan asal atau tujuan dari data tersebut. Misal CPU perlu membaca instruksi (data) dari memori pada lokasi tertentu. Lebar jalur pada Address Bus menentukan kapasitas memori maksimum dari sistem.
- Control Bus memiliki informasi kendali dan timing pada Bus, diantaranya sinyal read/write memory (MRD/MWR) , Interrupt request (IRQ), dan Clock signals (CK).
Jenis BUS
- Dedicated, yang memiliki jalur data dan address yang terpisah.
- Multiplexed, yang memiliki jalur bersama (tidak terpisah) serta address dan data pada saat yang berbeda.
CHAPTER III
Cache
Direct Mapping
Setiap block dari memori utama hanya memetakan ke dalam satu baris cache. Jika suatu block ditemukan di cache, maka block tersebut selalu ditemukan pada tempat yang sama. Nomor baris dihitung dengan menggunakan rumus sebagai berikut :
i = Nomor baris cache
j = Nomor block pada memori utama
m = jumlah baris di cache
Adapun karakteristik dari Direct Mapping adalah sebagai berikut :
- Panjang Alamat (address length) = (s + w) bits
- Jumlah unit yang dialamati (number of addressable units) = 2s+w words/ bytes
- Ukuran block (block size) = lebar baris (line width) = 2w words/bytes
- Jumlah block dalam memori (number of blocks in main memory) = 2s+ w/2w = 2s
- Jumlah baris dalam cache (number of lines in cache) = m = 2r
- Ukuran Tag (size of tag) = (s – r) bits
Associative Mapping
- Least significant bits (LSB) w = posisi word pada block
- Most significant bits (MSB) s = Tag digunakan untuk mengidentifikasikan block yang mana disimpan pada baris tertentu
- Panjang alamat (address length) = (s + w) bits
- Jumlah unit yang bisa dialamati (number of addressable units) = 2s+w words/bytes
- Ukuran block (block size) = ukuran baris (line size) = 2w words/bytes
- Jumlah dari block pada memori utama (number of blocks in main memory) = 2s+ w/2w = 2s
- Jumlah baris dari cache (number of lines in cache) = tidak bisa ditentukan Ukuran Tag = s bits
Set Associative Mapping
- Panjang alamat (address length) = (s + w) bits
- Jumlah alamat yang bisa di alamati (number of addressable units) = 2s+w words/bytes
- Ukuran block (block size) = ukuran baris (line size) = 2w words/bytes
- Jumlah block pada memori utama (number of blocks in main memory) = 2s+ w/2w = 2s
- Jumlah baris pada himpunan (number of lines in set) = k
- Jumlah set (number of sets) = v = 2d
- Jumlah baris pada cache (number of lines in cache) = kv = k * 2d
- Ukuran Tag (size of tag) = (s – d) bits
CHAPTER IV
Memori Internal
- Read/Write
- Volatile
- Penyimpanan Sementara
- Static atau Dynamic
- Bit tersimpan berupa muatan dalam kapasitor
- Muatan dapat bocor
- Perlu di-refresh
- Konstruksi sederhana
- Ukuran per bit nya kecil
- Murah
- Perlu refresh-circuits
- Lambat
- Main memory
- Bit disimpan sebagai switches on/off
- Tidak ada kebocoran
- Tidak perlu refreshing
- Konstruksi lebih kompleks
- Ukuran per bit lebih besar
- Lebih mahal
- Tidak memerlukan refresh-circuits
- Lebih cepat
- Cache
- Menyimpan secara permanen
- Digunakan untuk Microprogramming, Library subroutines, Systems programs (BIOS), dan Function tables
- Erasable Programmable (EPROM). Dihapus dg sinar UV.
- Electrically Erasable (EEPROM). Perlu waktu lebih lama untuk menulisi.
- Flash memory. Menghapus seluruh memori secara elektrik.
CHAPTER V
Memori Eksternal
Fixed / Movable Head Disk
- Ada satu head (r/w) per track
- Head diletakkan pada tangkai yang tetap
- Hanya ada satu head per side
- Diletakkan pada tangkai yang dapat bergerak
Removable / Nonremovable Disk
- Dapat dilepas dari drive dan diganti dengan disk lain
- Memberikan kapasitas simpanan yang tak terbatas
- Mudah melakukan transfer data antar sistem
- Terpasang permanen di dalam drive
Jenis-jenis Memori Eksternal
- Dilapisi Metal atau plastik dengan material yang bersifat magnet (iron oxide)
- Memiliki berbagai jenis kemasan, seperti Floppy, Winchester hard disk, Removable hard disk
- Removable
- Dilapisi Polycarbonate dengan material yang bersifat sangat reflektif
- Umumnya dibuat untuk peralatan audio
- Data dibaca dengan menggunakan laser yang reflektif
- Berupa serial akses
- Lambat
- Sangat Murah
- Menggunakan metode Backup (cadangan) dan Archive (arsip)
CHAPTER VI
Operating System (OS)
Fungsi dan Kegunaan OS
- Membuat komputer menjadi lebih Convenience atau lebih nyaman dan mudah untuk dioperasikan.
- Membuat kerja komputer menjadi lebih Effisien atau memungkinkan penggunaan daya komputer yang lebih baik dan hemat.
OS Services
- Pembuatan program komputer
- Pengeksekusian program komputer
- Akses ke perangkat I/O
- Mengatur akses ke data di dalam file
- Akses ke perangkat sistem
- Mendeteksi dan merespon jika terjadi error di komputer
Jenis-jenis OS
- Satu processor pada komputer hanya bisa mengerjakan satu program di satu waktu
- Manajemen memorinya yaitu dengan memisah file data pada memori menjadi dua bagian
- Satu program hanya untuk satu OS
- Satu processor pada komputer dapat mengerjakan banyak program sekaligus di satu waktu
- Pengerjaan user dipisah menjadi beberapa bagian dan dibagikan diantara proses yang sedang aktif
Scheduling
- Menentukan program mana yang akan dikirim untuk dilakukan pemrosesan
- Mengatur tingkat kepentingan (untuk diproses) dari sebuah program
- Jika sudah terkirim, proses akan dilanjutkan oleh Short Term Scheduler
- Atau jika tidak, proses akan di 'Swap' oleh Medium Term Scheduler
- Bagian dari 'Swapping Function' dari komputer
- Manajemen multi-programming dilakukan berdasarkan keinginan user
- Jika tidak ada Virtual Memory, manajemen memori akan bermasalah
- Pengirim proses
- Memutuskan proses mana yang akan di eksekusi selanjutnya
- Proses yang akan dieksekusi tergantung dari ketersediaan slot pada processor
CHAPTER VII
Arithmatic & Logic Unit (ALU)
Arithmetic dan Logic Unit (ALU)
- Melakukan operasi aritmatika
- Bisa menangani tipe data integer
- Bisa menangani data bertipe floating point (bilangan real)
Bilangan Bulat (Integer)
- Hanya terdapat bit 0 & 1 untuk merepresentasikan semua operasi bilangan
- Tidak ada tanda minus
- Tidak mengandung koma
- Sign-Magnitude (0 diartikan positif dan 1 diartikan negatif)
- Two Compliment, contoh
- +3 = 00000011
- +2 = 00000010
- +1 = 00000001
- +0 = 00000000
- -1 = 11111111
- -2 = 11111110
- -3 = 11111101
Addition dan Substraction
Bilangan Real
- Sering juga disebut Floating Point
- Menggunakan nilai pecahan
- Dapat dilakukan pengoperasian dengan menggunakan operasi bilangan biner
- Direpresentasikan menjadi 2 bagian, yakni:
- Mantissa, yang menentukan digit dari angka atau bilangan real
- Eksponen, yang menentukan seberapa besar nilai dari mantissa angka tersebut
- Contoh : 34600000 = 346E5 (346 * 10 pangkat 5)
CHAPTER VIII
Set Intruksi
Pengertian
Elemen Instruksi Mesin
- Operation Code (Op code), menjabarkan kode operasi yang akan dilakukan atau diproses.
- Source Operand reference, mengetahui sumber dari operasi yang dapat berasal dari beberapa sumber. Operand adalah input operasi
- Result Operand reference, adalah hasil atau keluaran dari operasi.
- Next Instruction reference, menginformasikan posisi instruksi yang harus dieksekusi oleh CPU
Representasi Instruksi
- ADD = penambahan
- SUB = substract (pengurangan)
- LOAD = muatkan data ke memori
- Memori utama
- Register CPU
- Perangkat I/O
- ADD A, B artinya : nilai yang ada di lokasi B ditambahkan ke dalam register A dan hasilnya juga disimpan di dalam register A.
Jenis-jenis Set Instruksi
- Pengolahan data (data processing), meliputi operasi aritmetika dan logika yang memiliki kemampuan untuk mengolah data lain.
- Perpindahan data (data movement), meliputi instruksi perpindahan data antar register maupun modul I/O.
- Penyimpanan data (data storage), berisi instruksi-instruksi penyimpanan ke dalam memori yang sangat penting untuk digunakan ke operasi berikutnya.
- Kontrol aliran program (program flow control), berisi instruksi pengontrolan operasi dan percabangan yang berguna untuk pengontrolan status dan mengoperasikan sistem percabangan operasi untuk dikerjakan bersama dengan set instruksi lain.
CHAPTER IX
Struktur dan Fungsi CPU
Aktivitas CPU
- Fetch Instruction (Mengambil Instruksi)
- Interpret Data (Mengartikan Data)
- Fetch Data (Mengambil Data)
- Process Data (Mengolah Data)
- Write Data (Menulis Data)
- Arithmetic and Logic Unit (ALU) yang melakukan komputasi atau pengolahan data berdasar instruksi yang diberikan kepadanya
- Control Unit (CU) yang mengontrol perpindahan data dan instruksi ke CPU atau dari CPU lalu mengontrol operasi ALU
- Register
Register CPU
- User-visible Registers adalah register yang tertulis menggunakan bahasa mesin yang dieksekusi oleh CPU. Memiliki kategori:
- General Purpose
- Data
- Alamat
- Kode Kondisi
- Control and Status Registers adalah register yang digunakan untuk mengontrol operasi CPU dan eksekusi program.
User Visible Registers
- General Purpose Register, dapat berisi operand sembarang opcode yang dapat digunakan di berbagai fungsi oleh user (pemrogram).
- Register data, digunakan untuk menampung data namun tidak dapat digunakan untuk kalkulasi dan alamat operand.
- Register alamat, digunakan untuk pengalamatan tertentu sebuah data. Register alamat memiliki fungsi yang mirip dengan general purpose register. Contoh:
- Segment Pointer, digunakan untuk menyimpan alamat berbasis segmen.
- Register Index, digunakan untuk menyimpan alamat-alamt terindeks dan autoindexed
- Stack Pointer, digunakan untuk pengalamatan push, pop, dan instruksi stack lainnya.
CHAPTER X
Instruct Set Computer (ISC)
RISC
- Siklus mesin ditentukan oleh waktu yang digunakan untuk mengambil dua buah operand dari register, melakukan operasi ALU, dan menyimpan hasil operasinya ke dalam register.
- Operasi berbentuk "dari register ke register" yang terdiri dari operasi load dan store untuk mengakses memori.
- Menggunakan metode pengalamatan sederhana yang hampir sama dengan instruksi pengalamatan register.
- Menggunakan format instruksi yang sederhana, panjang instruksinya tetap dan disesuaikan dengan panjang word.
- Instruksi berukuran tunggal
- Memiliki ukuran 4 byte
- Jumlah pengalamatan data biasanya kurang dari 5 buah
- Tidak terdapat pengalamatan tak langsung yang mengharuskan melakukan sebuah akses memori agar memperoleh alamat operand lainnya dalam memori.
- Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmatika.
- Tidak terdapat lebih dari satu operand beralamat memori per instruksi.
- Tidak mendukung perataan sembarang bagi data untuk operasi load/ store.
- Jumlah maksimum pemakaian memori manajemen bagi suatu alamat data adalah satu instruksi.
CISC
- Sarat informasi memberikan keuntungan di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang.
- Dimaksudkan untuk meminimumkan jumlah perintah yang diperlukan untuk mengerjakan pekerjaan yang diberikan.
- Memiliki jumlah instruksi yang banyak
- Banyak terdapat perintah bahasa mesin
- Instruksi lebih kompleks
- Lebih lambat dari RISC
CHAPTER XI
Instruksi Paralel dan Superscalar Processor
Superscalar Architecture
- Instruction Level Parallelism, dapat dilakukan ketika instruksi yang berjalan tidak bergantung pada eksekusi yang lain, sehingga dapat berjalan secara paralel dengan tumpang tindih.
- Machine Parallelism, adalah ukuran dari kemampuan prosesor untuk mengambil keuntungan dari adanya instruksi yang dijalankan secara paralel.
- Instruction Issue Policy
Instruction Issue Policy
- In-Order Issue with In-Order Completion (IOI with IOC), merupakan instruction issue policy paling sederhana, yakni dengan mengeksekusi instruksi secara sekuen (IOI) dan menuliskannya dalam order yang sama (IOC).
- In-Order Issue with Out-of-Order Completion (IOI with OOC), OOC digunakan dalam prosesor RISC scalar untuk memperbaiki kinerja pada instruksi yang membutuhkan multiple cycle. Dengan OOC, sejumlah instruksi memungkinkan dalam stage eksekusi pada waktu yang sama.
- Out-Of-Order Issue with Out-Of-Order Completion (OOI with OOC), dengan konsep OOI, setelah prosesor selesai melakukan instruksi decode, instruksi ditempatkan di instruction window, selama instruction window tidak penuh, proses dapat terus melakukan fetch dan decode instruksi baru.
- Dengan adanya konsep OOI with OOC memungkinkan adanya dependensi WAW (Write After Write) dan WAR (Write After Read). Register Renaming menjadi salah satu metode untuk mengatasi konflik duplikasi sumber daya, dimana register dialokasikan dinamis oleh hardware prosesor, dan register berhubungan dengan nilai-nilai yang dibutuhkan oleh instruksi.
Pentium 4 (Prosesor Superscalar)
- Mengambil instruksi ke dalam memori dari program
- Menerjemahkan instruksi menjadi satu atau lebih instruksi RISC
- Mengekseksusi micro-ops pada superscalar pipeline
- Menyimpan hasil dari micro-ops ke register
- Di luar CISC shell di bagian dalam RISC core
- Bagian dalam RISC core terdapat pipeline yang terdiri minimal 20 stage
- Materi AOK Kelas D oleh Dosbim Bapak Agung Kridoyono, S.ST.,MT
- RISC dan CISC : https://www.ketikanmd.tech/2016/06/makalah-risc-dan-cisc.html
- Superscalar Arschitecture : http://mycomputerarchitecture.blogspot.com/2017/10/superscalar-architecture.html
Komentar
Posting Komentar