Senin, 22 Maret 2010

arsitektur dan organisasi komputer

ORGANISASI & ARSITEKTUR KOMPUTER
Oleh : Drs. Slamet Soelaeman MT
Text Book
William Stalling, “Computer Organization & Architecture”, Prentice Hall, 2000
Andrew S. Tanenbaum,” Structured Computer Organization”, Prentice Hall, 1999

MATERI
DEFINISI ARSITEKTUR KOMPUTER
DEFINISI ORGANISASI KOMPUTER
APA ITU KOMPUTER
STRUKTUR & FUNGSI KOMPUTER
PENJELASAN
EVOLUSI KOMPUTER

.: Definisi Organisasi Komputer
Organisasi komputer berkaitan dengan unit-unit
operasional dan interkoneksinya yang merealisasikan spesifikasi arsitektural

Misal : teknologi hardware, perangkat antarmuka, teknologi memori, sistem memori, dan sinyal–sinyal kontrol

.: Definisi Arsitektur Komputer
Arsitektur komputer berkaitan dengan atribut – atribut yang mempunyai dampak langsung pada eksekusi logis sebuah program.[William Stalling]
Misal : Set Instruksi, jumlah bit yang digunakan untuk penyajian data, mekanisme I/O, teknik pengalamantan (addressing techniques).

Arsitektur & Organisasi 1
Semua Keluarga Intel x86 mempunyai arsitektur dasar yang sama
Sistem IBM System/Keluarga 370 mempunyai arsitektur dasar yang sama
Memberikan compatibilitas instruksi level
At least backwards
Mesin organisasi antar versi memiliki perbedaan
Struktur & Fungsi
Struktur adalah sistem yang berinteraksi dengan cara tertentu dengan dunia luar.
Fungsi adalah operasi dari masing-masing komponen yang merupakan bagian dari struktur
.: Organisasi Vs Arsitektur 1
Ilustrasi, perbedaan antara arsitektur dan organisasi, pabrik komputer menawarkan sekelompok model komputer, yang semuanya memiliki arsitektur yang sama tetapi dengan organisasi yang berbeda.

Akibatnya, model – model yang berbeda akan memiliki harga dan karakteristik kinerja yang berbeda. Selain itu suatu arsitektur dapat bertahan selama bertahun – tahun dan meliputi sejumlah model komputer yang berbeda, namun organisasinya dapat berubah – ubah sesuai seiring dengan perkembangan teknologi.
.: Organisasi Vs Arsitektur 2
Arsitektur sama, organisasi dapat berbeda
Arsitektur bertahan lama, organisasi menyesuaikan perkembangan teknologi
Semua Intel familix86 memiliki arsitektur dasar yang sama
Famili IBM System/370 memiliki arsitektur dasar yang sama
Memberikan compatibilitas instruksi level mesin
Organisasi antar versi memiliki perbedaan
.: Apa itu Komputer ?
Kata komputer berasal dari bahasa Latin yaitu Computare yang artinya menghitung. Dalam bahasa Inggris disebut to compute.

Definisi komputer : sekumpulan alat elektronik yang saling bekerja sama, dapat menerima data (input), mengolah data (proses) dan memberikan informasi (output) serta terkoordinasi dibawah kontrol program yang tersimpan di memorinya.

Semua komputer memiliki 4 fungsi:
Pengolahan data - Data processing
Penyimpanan data - Data storage
Pemindahan data - Data movement
Kendali - Control

Unit Fungsional Dasar Komputer
Gambar Fungsi
Gambar dari Fungsi Komputer

Operasi (1)
Fungsi Operasi Pemindahan Data
Contoh : keyboard ke screen

Operasi (2)
Fungsi Operasi Penyimpanan Data
contoh : Internet download to disk
Operasi (3)
Proses dari/ke unit penyimpanan
Contoh : Updating bank statement
Operasi (4)
Proses dari unit penyimpanan ke I/O
Contoh : Printing a bank statement

Struktur - Top Level
Struktur - CPU
Struktur – Unit Kontrol
Struktur dan fungsi komputer
Penjelasan
Fungsi komputer didefinisikan sebagai operasi masing-masing komponen sebagai bagian dari struktur. Adapun fungsi dari masing-masing komponen dalam struktur di atas adalah sebagai berikut:

1. Input Device (Alat Masukan)
Adalah perangkat keras komputer yang berfungsi sebagai alat untuk memasukan data atau perintah ke dalam komputer. Contoh : keyboard

2. Output Device (Alat Keluaran)
Adalah perangkat keras komputer yang berfungsi untuk menampilkan keluaran sebagai hasil pengolahan data. Keluaran dapat berupa hard-copy (ke kertas), soft-copy (ke monitor), ataupun berupa suara.


3. I/O Ports
Bagian ini digunakan untuk menerima ataupun mengirim data ke luar sistem. Peralatan input dan output di atas terhubung melalui port ini.

4. CPU (Central Processing Unit)
CPU merupakan otak sistem komputer, dan memiliki dua bagian fungsi operasional, yaitu: ALU (Arithmetical Logical Unit) sebagai pusat pengolah data, dan CU (Control Unit) sebagai pengontrol kerja komputer.

5. Memori
Memori terbagi menjadi dua bagian yaitu memori internal dan memori eksternal. Memori internal berupa RAM (Random Access Memory) yang berfungsi untuk menyimpan program yang kita olah untuk sementara waktu, dan ROM (Read Only Memory) yaitu memori yang hanya bisa dibaca dan berguna sebagai penyedia informasi pada saat komputer pertama kali dinyalakan.


6. Data Bus
Adalah jalur-jalur perpindahan data antar modul dalam sistem komputer. Karena pada suatu saat tertentu masing-masing saluran hanya dapat membawa 1 bit data, maka jumlah saluran menentukan jumlah bit yang dapat ditransfer pada suatu saat. Lebar data bus ini menentukan kinerja sistem secara keseluruhan. Sifatnya bidirectional, artinya CPU dapat membaca dan menerima data melalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau 64 jalur paralel.

7. Address Bus
Digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer data. Pada jalur ini, CPU akan mengirimkan alamat memori yang akan ditulis atau dibaca.

8. Control Bus
Control Bus digunakan untuk mengontrol penggunaan serta akses ke Data Bus dan Address Bus. Terdiri atas 4 sampai 10 jalur paralel.


Mechanical devices
Electromechanical Machines
• Based on Relays
– Konrad Zuse (1910-1995)
The Zuse Z3 & Z4
.: Evolusi Komputer :.
KOMPUTER GENERASI PERTAMA (1941)

Pemicu Perang Dunia II
Penggunaan Vacum Tube & instruksi menggunakan bahasa mesin
ENIAC (Electronic Numerical Integrator and Computer) : 18000 tabung, 30 ton.




Electronic Computers


KOMPUTER GENERASI KETIGA (1958)

penggunaan IC (Integrated Circuit )
mengkombinasikan tiga komponen elektronik dalam sebuah piringan silikon kecil yang terbuat dari pasir kuarsa
munculnya chip semikonduktor : gabungan banyak IC dalam 1 chip yang dapat diprogram sesui dengan kebutuhan


KOMPUTER GENERASI KEEMPAT (1980)
Setelah IC, tujuan pengembangan menjadi lebih jelas: mengecilkan ukuran sirkuit dan komponen-komponen elektrik.

Large Scale Integration (LSI) dapat memuat ratusan komponen dalam sebuah chip.
Very Large Scale Integration (VLSI) memuat ribuan komponen dalam sebuah chip tunggal.
Mikroprosesor : penggabungan seluruh komponen komputer ( CPU , memori, kendali I/O) dan diprogram sesuai dengan kebutuhan.
Munculnya PC
Komputer Generasi Kelima
Sudah tidak berorientasi pada kecepatan atau ukuran fisik, namun lebih menonjolkan performance Artificial Intelegence
Patern recognation, bioinformatika
Kesimpulan
Komputer adalah sebuah mesin elektronik yang secara cepat menerima informasi masukan digital dan mengolah informasi tersebut menurut seperangkat instruksi yang tersimpan dalam
komputer dan menghasilkan keluaran informasi yang dihasilkan setelah diolah.
Organisasi Komputer adalah bagian yang terkait erat dengan unit–unit operasional dan interkoneksi antar komponen penyusun sistem komputer dalam merealisasikan aspek arsitekturalnya.
Arsitektur Komputer lebih cenderung pada kajian atribut–atribut sistem komputer yang terkait dengan seorang programmer.
Struktur internal komputer meliputi: Central Processing Unit(CPU), Struktur internal CPU meliputi: Control Unit, Aritmetic And Logic Unit (ALU), Register, CPU Interkoneksi.
Fungsi dasar sistem komputer adalah Fungsi Operasi Pengolahan Data, Penyimpanan Data, Fungsi Operasi Pemindahan Data, Fungsi Operasi Kontrol.








Organisasi Komputer Dosen : Drs. Slamet Soelaeman,MT Handbook : Computer Organization and architecture 5th Edition – Prentice Hall by William Stalling
Materi 2 Evolusi dan Kinerja Komputer

Latar Belakang - ENIAC
ENIAC (Electronic Numerical Integrator And Computer)
Ditemukan oleh John Presper Eckert dan John Mauchly
Penelitian di University of Pennsylvania
Jarak dan tabel lintasan peluru kendali
Dimulai 1943, Selesai 1946
Terlalu telat untuk digunakan dalam PD II
Digunakan hingga 1955

ENIAC – Lebih lengkap
Menggunakan bilangan desimal (tdk biner)
20 akumulator yang menampung 10 digits
Di program secara manual dengan switch
Terdiri dari 18,000 tabung hampa
Dengan berat 30 tons
Meggunakan lokasi 15,000 kaki bujur sangkar
Konsumsi daya sebesar 140 kW
Melakukan 5.000 operasi penjumlahan perdetik
von Neumann/Turing
Konsep Stored Program
Memori utama untuk menyimpan program dan data
ALU beroperasi atas data biner
Unit Kontrol menginterprestasikan instruksi dari memori dan mengeksekusinya
Perangkat I/O dioperasikan oleh unit kontrol
Princeton Institute for Advanced Studies
IAS
Selesai tahun 1952
Structure of von Nuemann machine
Penjelasan - IAS
1000 x 40 bit words
Bilangan biner
2 x 20 bit instruksi
Pengaturan register (terdapat dalam CPU)
Memory Buffer Register (MBR)
Memory Address Register (MAR)
Instruction Register (IR)
Instruction Buffer Register (IBR)
Program Counter (PC)
Accumulator (AC)
Multiplier Quotient (MQ)
Struktur IAS - detail
Komputer Komersil
1947 - Eckert-Mauchly Computer Corporation
UNIVAC I (Universal Automatic Computer)
Kalkulasi dari US Bureau of Census - 1950
Menjadi bagian dari Sperry-Rand Corporation
Late 1950s - UNIVAC II
Lebih cepat
Memori lebih besar
IBM
Peralatan pemroses punched-card
1953 – IBM seri 701
Komputer terprogram pertama dari IBM
Untuk perhitungan aplikasi ilmiah
1955 - IBM 702
Aplikasi bisnis
IBM menjadi pemimpin seri 700/7000
Transistors
Menggantikan tabung hampa (vacuum tubes)
Lebih kecil
Lebih murah
Disipasi panas rendah
Perangkat padat (Solid State device)
Dibuat dari Silicon (Sand)
Ditemukan tahun 1947 di Laboratorium Bell
Oleh William Shockley dan kawan-kawan.
Komputer berbasis Transistor
Mesin generasi kedua
NCR & RCA memproduksi mesin kesil menngunakan transistor
IBM 7000
DEC - 1957
Memproduksi komputer PDP-1


Mikroelektronik
Diartikan “small electronics”
Sebuah komputer dibuat atas gerbang-gerbang logika, sel-sel memori dan interkoneksinya
Ini dapat diproduksi pada sebuah bahan semikonduktor
Misalnya : silicon wafer

Generasi Komputer
Vacuum tube - 1946-1957
Transistor - 1958-1964
Small scale integration (SSI) - 1965
Lebih dari 100 perangkat dalam satu chip
Medium scale integration (MSI) - 1971
Sekitar 100-3.000 perangkat dalam satu chip
Large scale integration (LSI) - 1971-1977
3.000 – 100.000 perangkat dalam satu chip
Very large scale integration (VLSI) - 1978 - sekarang
100.000 – 100.000.000 perangkat dalam satu chip
Ultra large scale integration (ULSI)
Lebih dari 100.000.000 perangkat dalam satu chip
Hukum Moore
Peningkatan muatan komponen dalam chip
Gordon Moore – salah satu pendiri Intel
Jumlah transistors pada sebuah chip meningkat dua kali lipat setiap tahunnya
Sejak 1970-an perkambangan sedikit melambat
Jumlah transistor betambah dua kali lipat setiap 18 bulan
Biaya sebuah chip tidak berubah baik satu maupun banyak
Muatan pengepakan yang lebih tinggi berarti memperpendek jalur listrik, akan menghasilkan kinerja yang lebih tinggi juga
Ukuran yang senakin kecil, flesibelitas meningkat
Mereduksi daya dan membutuhkan pendingin
Interkoneksi semakin sedikit meningkatkan reabilitasnya
Pertumbuhan jumlah transistor CPU
IBM seri 360
1964
Menggantikan (& tidak kompatibel dengan) seri 7000
Rancangan pertama “Keluarga ” Komputer
Instruksi set yang sama atau identik
Sistem operasi yang sama atau identik
Peningkatkan kecepatan
Peningkatan jumlah port I/O (tambahan terminal)
Peningkatan ukuran memori
Peningkatan biaya
Struktur switch dimultipleks
DEC PDP-8
1964
Minicomputer pertama
Tidak membutuhkan ruangan khusus
Cukup kecil untuk ditemapkan di lab
Aplikasi embedded & OEM
Menggunakan struktur bus
Bus Strukture DEC - PDP-8
Memori Semikonduktor
1970
Diperkenalkan oleh Fairchild
Ukuran pada sebuah cincin (core)
Penyimpan 1 bit magnetic core
Mampu menamping hingga 256 bits
Membaca dengan pola Non-destructive
Jauh lebih cepat
Kapasitasnya diperkirakan meningkat dua kali setiap tahunnya
Intel
1971 - 4004
Microprocessor pertama
Semua komponen CPU pada satu chip
4 bit
Diawali pada tahun 1972 dengan 8008
8 bit
Dirancang untuk aplikasi tertentu
1974 - 8080
Mikroprosesor Intel pertama untuk tujuan umum
1978 - 8086, 80286
1985 - 80386
1989 - 80486
Perkembangan selanjutnya
Pipelining
On board cache
On board L1 & L2 cache
Branch prediction
Data flow analysis
Speculative execution

Persoalan Kinerja
Kecepatan prosesor meningkat
Kapasitas memory naik
Kecepatan memory selalu tertinggal oleh kecepatan prosesor
Karakteristik Prosesor dan DRAM
Trend dalam penggunaan DRAM
Solusi
Pertambahan jumlah bit dilakukan sekali
Buat DRAM “lebih lebar” dari pada “lebih dalam”
Perubahan antarmuka DRAM
Cache
Kurangi frequency of memory access
Cache yang lebih kompleks dan cache pada chip
Peningkatan bandwidth interkoneksi
Buse- bus kecepatan tinggi
Bus-bus yang disusun secara hierarkis
Pentium
CISC
Menggunakan teknik-teknik superscalar
Eksekusi instruksi secara parallel
P6 : menggunakan:
Brach prediction
Data flow analisys
Specultive execution
P7 : menggunakan teknologi berbasis RISC
PowerPC
Sistem RISC superscalar
Hasil kerjasama IBM – Motorolla - Apple
Diturunkan dari arsitektur POWER (IBM RS/6000)
Keluarga PowerPC:
601: 32-bit
603: low-end desktop dan komputer portabel
604: desktop dan low-end user
620: 64-bit penuh, high-end user
Internet Resources


Karakteristik Memori
Lokasi
Kapasitas
Unit transfer
Metode Akses
Kinerja
Jenis fisik
Sifat-sifat fisik
Organisasi
Lokasi
CPU (register)
Internal (main memori)
External (secondary memori)
Kapasitas
Ukuran Word
Satuan alami organisasi memori
Banyaknya words
atau Bytes
Satuan Transfer
Internal
Jumlah bit dalam sekali akses
Sama dengan jumlah saluran data (= ukuran word)
External
Dalam satuan block yg merupakan kelipatan word
Addressable unit
Lokasi terkecil yang dpt dialamati secara uniq
Secara internal biasanya sama dengan Word
Untuk disk digunakan satuan Cluster
Metode Akses
Sekuensial
Mulai dari awal sampai lokasi yang dituju
Waktu akses tergantung pada lokasi data dan lokasi sebelumnya
Contoh tape
Direct
Setiap blocks memilki address yg unique
Pengaksesan dengan cara lompat ke kisaran umum (general vicinity) ditambah pencarian sekuensial
Waktu akses tdk tergantung pada lokasi dan lokasi sebelumnya
contoh disk
Metode Akses
Random
Setiap lokasi memiliki alamat tertentu
Waktu akses tdk tergantung pada urutan akses sebelumnya
Contoh RAM
Associative
Data dicari berdasarkan isinya bukan berdasarkan alamatnya
Waktu akses tdk tergantung terhadap lokasi atau pola akses sebelumnya
Contoh: cache
Hierarki Memori
Register
Dalam CPU
Internal/Main memory
Bisa lebih dari satu level dengan adanya cache
“RAM”
External memory
Penyimpan cadangan
Performance
Access time
Waktu untuk melakukan operasi baca-tulis
Memory Cycle time
Diperlukan waktu tambahan untuk recovery sebelum akses berikutnya
Access time + recovery
Transfer Rate
Kecepatan transfer data ke/dari unit memori
Jenis Fisik
Semiconductor
RAM
Magnetic
Disk & Tape
Optical
CD & DVD
Others
Bubble
Hologram
Karakteristik
Decay
Volatility
Erasable
Power consumption

Organisasi
Susunan fisik bit-bit untuk membentuk word


Kendala Rancangan
Berapa banyak?
Capacity
Seberapa cepat?
Time is money
Berapa mahal?

Hierarki
Registers
L1 Cache
L2 Cache
Main memory
Disk cache
Disk
Optical
Tape
Ingin Komputer yg Cepat?
Komputer hanya menggunakan static RAM
Akan sangat cepat
Tidak diperlukan cache
Apa perlu cache untuk cache?
Harga menjadi sangat mahal

Locality of Reference
Selama berlangsungnya eksekusi suatu program, referensi memori cenderung untuk mengelompok (cluster)
Contoh: loops

Memori Semiconductor
RAM
Penamaan yang salah karena semua memori semiconductor adalah random access (termasuk ROM)
Read/Write
Volatile
Penyimpan sementara
Static atau dynamic
Dynamic RAM
Bit tersimpan berupa muatan dalam capacitor
Muatan dapat bocor
Perlu di-refresh
Konstruksi sederhana
Ukuran per bit nya kecil
Murah
Perlu refresh-circuits
Lambat
Main memory
Static RAM
Bit disimpan sebagai switches on/off
Tidk ada kebocoran
Tdk perlu refreshing
Konstruksi lebih complex
Ukuran per bit lebih besar
Lebih mahal
Tidak memerlukan refresh-circuits
Lebih cepat
Cache
Read Only Memory (ROM)
Menyimpan secara permanen
Untuk
Microprogramming
Library subroutines
Systems programs (BIOS)
Function tables

Jenis ROM
Ditulisi pada saat dibuat
Sangat mahal
Programmable (once)
PROM
Diperlukan peralatan khusus untuk memprogram
Read “mostly”
Erasable Programmable (EPROM)
Dihapus dg sinar UV
Electrically Erasable (EEPROM)
Perlu waktu lebih lama untuk menulisi
Flash memory
Menghapus seleuruh memori secara electris
Organisasi
16Mbit chip dapat disusun dari 1M x 16 bit word
1 bit/chip memiliki 16 lots dengan bit ke 1 dari setiap word berada pada chip 1
16Mbit chip dapat disusun dari array: 2048 x 2048 x 4bit
Mengurangi jumlah addres pins
Multiplex row address dg column address
11 pins untuk address (211=2048)
Menambah 1 pin kapasitas menjadi 4x
Refreshing
Rangkaian Refresh dimasukkan dalam chip
Disable chip
Pencacahan melalui baris
Read & Write back
Perlu waktu
Menurunkan kinerja
Contoh: 16 Mb DRAM (4M x 4)
Packaging
Organisation Module
Organisation Modul (2)
Koreksi kesalahan
Rusak berat
Cacat/rusak Permanent
Rusak ringan
Random, non-destructive
Rusak non permanent
Dideteksi menggunakan Hamming code
Error Correcting Code Function
Cache
Memori cepat dg kapasitas yg sedikit
Terletak antara main memory dengan CPU
Bisa saja diletakkan dalam chip CPU atau module tersendiri
Operasi pada Cache
CPU meminta isi data dari lokasi memori tertentu
Periksa data tersebut di cache
Jika ada ambil dari cache (cepat)
Jika tidak ada, baca 1 block data dari main memory ke cache
Ambil dari cache ke CPU
Cache bersisi tags untuk identitas block dari main memory yang berada di cache
Desain Cache
Ukuran (size)
Fungsi Mapping
Algoritma penggantian (replacement algrthm)
Cara penulisan (write policy)
Ukuran Block
Jumlah Cache
Size
Cost
Semakin besar semakin mahal
Speed
Semakin besar semakin cepat
Check data di cache perlu waktu
Organisasi Cache
Fungsi Mapping
Ukuran Cache 64kByte
Ukuran block 4 bytes
diperlukan 16k (214) alamat per alamat 4 bytes
Jumlah jalur alamat cache 14
Main memory 16MBytes
Jalur alamat perlu 24 bit
(224=16M)
Direct Mapping
Setiap block main memory dipetakan hanya ke satu jalur cache
Jika suatu block ada di cache, maka tempatnya sudah tertentu
Address terbagi dalam 2 bagian
LS-w-bit menunjukkan word tertentu
MS-s-bit menentukan 1 blok memori
MSB terbagi menjadi field jalur cache r dan tag sebesar s-r (most significant)
Struktur Alamat Direct Mapping
24 bit address
2 bit : word identifier (4 byte block)
22 bit: block identifier
8 bit tag (=22-14)
14 bit slot atau line
2 blocks pada line yg sama tidak boleh memiliki tag yg sama
Cek isi cache dengan mencari line dan Tag
Table Cache Line pada Direct Mapping
Cache line blocks main memori
0 0, m, 2m, 3m…2s-m
1 1,m+1, 2m+1…2s-m+1

m-1 m-1, 2m-1,3m-1…2s-1
Organisai Cache Direct Mapping
Contoh Direct Mapping
Keuntungan & Kerugian Direct Mapping
Sederhana
Murah
Suatu blok memiliki lokasi yang tetap
Jika program mengakses 2 block yang di map ke line yang sama secara berulang-ulang, maka cache-miss sanagat tinggi
Associative Mapping
Blok main memori dpt di simpan ke cache line mana saja
Alamat Memori di interpresi sbg tag dan word
Tag menunjukan identitas block memori
Setiap baris tag dicari kecocokannya
Pencarian data di Cache menjadi lama

Organisasi Cache Fully Associative
Contoh Associative Mapping
Struktur Address Associative Mapping
22 bit tag disimpan untuk blok data 32 bit
tag field dibandingkan dg tag entry dalam cache untuk pengecekan data
LS 2 bits dari address menunjukkan 16 bit word yang diperlukan dari 32 bit data block
contoh
Address Tag Data Cache line
FFFFFC FFFFFC 24682468 3FFF
Set Associative Mapping
Cache dibagi dalam sejumlah sets
Setiap set berisi sejumlah line
Suatu blok di maps ke line mana saja dalam set
misalkan Block B dapat berada pada line mana saja dari set i
Contoh: per set ada 2 line
2 way associative mapping
Suatu block dpt berada pada satu dari 2 lines dan hanya dalam 1 set
Contoh Set Associative Mapping
Nomor set 13 bit
Nomor Block dlm main memori adl modulo 213
000000, 00A000, 00B000, 00C000 … map ke set yang sama
Organisasi Cache: Two Way Set Associative
Struktur Address: Set Associative Mapping
set field untuk menentukan set cache set yg dicari
Bandingkan tag field untuk mencari datanya
Contoh:
Address Tag Data Set number
1FF 7FFC 1FF 12345678 1FFF
001 7FFC 001 11223344 1FFF
Contoh Two Way Set Associative Mapping
Replacement Algorithms (1) Direct mapping
Tidak ada pilihan
Setiap block hanya di map ke 1 line
Ganti line tersebut
Replacement Algorithms (2) Associative & Set Associative
Hardware implemented algorithm (speed)
Least Recently used (LRU)
e.g. in 2 way set associative
Which of the 2 block is lru?
First in first out (FIFO)
replace block that has been in cache longest
Least frequently used
replace block which has had fewest hits
Random

Write Policy
Must not overwrite a cache block unless main memory is up to date
Multiple CPUs may have individual caches
I/O may address main memory directly
Write through
All writes go to main memory as well as cache
Multiple CPUs can monitor main memory traffic to keep local (to CPU) cache up to date
Lots of traffic
Slows down writes

Remember bogus write through caches!
Write back
Updates initially made in cache only
Update bit for cache slot is set when update occurs
If block is to be replaced, write to main memory only if update bit is set
Other caches get out of sync
I/O must access main memory through cache
N.B. 15% of memory references are writes
Pentium Cache
Foreground reading
Find out detail of Pentium II cache systems
NOT just from Stallings!

Newer RAM Technology (1)
Basic DRAM same since first RAM chips
Enhanced DRAM
Contains small SRAM as well
SRAM holds last line read (c.f. Cache!)
Cache DRAM
Larger SRAM component
Use as cache or serial buffer

Newer RAM Technology (2)
Synchronous DRAM (SDRAM)
currently on DIMMs
Access is synchronized with an external clock
Address is presented to RAM
RAM finds data (CPU waits in conventional DRAM)
Since SDRAM moves data in time with system clock, CPU knows when data will be ready
CPU does not have to wait, it can do something else
Burst mode allows SDRAM to set up stream of data and fire it out in block
SDRAM
Newer RAM Technology (3)
Foreground reading
Check out any other RAM you can find
See Web site:
The RAM Guide

Tidak ada komentar:

Posting Komentar