Anda di halaman 1dari 32

.

5.1 / MEMORI UTAMA SEMIKONDUKTOR 3

BAB

SNTERNAL MEMORY
a
5.1 Memori Utama Semikonduktor
Organisasi
DRAM dan SRAM

y Jenis ROM
Logika Chip
Kemasan Chip

a Organisasi Modul
Memori Interleaved
5.2 Koreksi Kesalahan
5.3 DramOrganization Tingkat Lanjut
DRAM Sinkron
Rambus DRAM
DDR SDRAM
Cache DRAM
5.4 Bacaan dan Situs Web yang Direkomendasikan
5.5 Istilah Utama, Tinjau Pertanyaan, dan Masalah

158
4 BAB 5 / MEMORI INTERNAL

POIN-POIN PENTING
◆ Dua bentuk dasar memori akses acak semikonduktor adalah RAM
dinamis (DRAM) dan RAM statis (SRAM). SRAM lebih cepat, lebih
mahal, dan kurang padat daripada DRAM, dan digunakan untuk
memori cache. DRAM digunakan untuk memori utama.
◆ Teknik koreksi kesalahan biasanya digunakan dalam sistem memori.
Ini melibatkan menambahkan bit redundan yang merupakan fungsi dari
bit data untuk membentuk kode koreksi kesalahan. Jika kesalahan bit
terjadi, kode akan mendeteksi dan, biasanya, memperbaiki kesalahan.
◆ Untuk mengimbangi kecepatan DRAM yang relatif lambat, sejumlah
organisasi DRAM canggih telah diperkenalkan. Dua yang paling
umum adalah DRAM sinkron dan DRAM RamBus. Kedua hal ini
melibatkan penggunaan jam sistem untuk menyediakan transfer blok
data.
Kami memulai bab ini dengan survei subsistem memori utama semikonduktor,
termasuk memori ROM, DRAM, dan SRAM. Kemudian kita melihat teknik
kontrol kesalahan yang digunakan untuk meningkatkan keandalan memori. Setelah
ini, kita melihat arsitektur DRAM yang lebih maju.

5.1 MEMORI UTAMA SEMIKONDUKTOR


Pada komputer sebelumnya, bentuk penyimpanan akses acak yang paling umum
untuk memori utama komputer menggunakan berbagai loop feromagnetik
berbentuk donat yang disebut sebagai core. Oleh karena itu, memori utama sering
disebut sebagai inti, istilah yang bertahan hingga hari ini. Munculnya, dan
keuntungan dari, mikroelektronika telah lama mengalahkan memori inti magnetik.
Saat ini, penggunaan chip semikonduktor untuk memori utama hampir universal.
Aspek-aspek kunci dari teknologi ini dieksplorasi di bagian ini.

Organisasi
Elemen dasar dari memori semikonduktor adalah sel memori. Meskipun berbagai
teknologi elektronik digunakan, semua sel memori semikonduktor memiliki sifat
tertentu:
• Mereka menunjukkan dua keadaan stabil (atau semistabil), yang dapat
digunakan untuk mewakili biner 1 dan 0.
• Mereka mampu ditulis ke dalam (setidaknya sekali), untuk mengatur negara.
• Mereka mampu dibaca untuk merasakan keadaan.
5.1 / MEMORI UTAMA SEMIKONDUKTOR 5
Gambar 5.1 menggambarkan pengoperasian sel memori. Paling umum, sel
memiliki tiga terminal fungsional yang mampu membawa sinyal listrik. Pilih
Menguasa Menguasa
i i

Pilih Data di Pilih Rasa


Sel Sel

(a) Menulis (b) Baca

Gambar 5.1 Operasi SelEmory

terminal, seperti namanya, memilih sel memori untuk operasi baca atau tulis. Terminal
kontrol menunjukkan membaca atau menulis. Untuk menulis, terminal lain menyediakan
sinyal listrik yang mengatur keadaan sel menjadi 1 atau 0. Untuk membaca, terminal itu
digunakan untuk output dari keadaan sel. Rincian organisasi internal, fungsi, dan waktu
sel memori tergantung pada teknologi sirkuit terpadu tertentu yang digunakan dan berada
di luar cakupan buku ini, kecuali untuk ringkasan singkat. Untuk tujuan kami, kami akan
menganggapnya sebagai mengingat bahwa sel individu dapat dipilih untuk operasi
membaca dan menulis.

DRAM dan SRAM


Semua jenis memori yang akan kita jelajahi dalam bab ini adalah akses acak. Artinya ,
kata-kata memori individual secara langsung diakses melalui logika pengalamatan kabel.
Tabel 5.1 mencantumkan jenis utama memori semikonduktor. Yang paling umum
disebut sebagai random-access memory (RAM). Ini, tentu saja, penyalahgunaan istilah,
karena semua jenis yang tercantum dalam tabel adalah akses acak. Salah satu
karakteristik yang membedakan RAM adalah bahwa adalah mungkin untuk membaca
data dari memori dan menulis data baru ke dalam memori dengan mudah dan cepat. Baik
membaca dan menulis dilakukan melalui penggunaan sinyal listrik.

Tabel 5.1 Tipe Memori Semikonduktor


Menulis
Tipe Memori Golongan Penghapusan Mekanisme Volatilitas
Memori akses acak Memori baca- Secara elektrik,
Elektrik Volatile
(RAM) tulis tingkat byte
Memori baca-saja (ROM) Memori baca- Masker Nonvolatile
saja Tidak mungkin
ROM yang dapat diprogram Elektrik
(PROM)

PROM yang Dapat Dilida Sebagian Sinar UV,


6 BAB 5 / MEMORI INTERNAL
(EPROM) tingkat chip

PROM yang Dapat Disetak Secara Secara elektrik,


Elektrik besar memori tingkat byte
(EEPROM) baca

Secara elektrik,
Memori flash
tingkat blok
Karakteristik lain yang membedakan RAM adalah bahwa hal itu fluktuatif.
RAM harus dilengkapi dengan catu daya yang konstan. Jika daya terputus, maka
data hilang. Dengan demikian, RAM hanya dapat digunakan sebagai
penyimpanan sementara. Dua bentuk tradisional RAM yang digunakan dalam
komputer adalah DRAM dan SRAM.

Teknologi RAM DINAMIS dibagi menjadi dua teknologi: dinamis dan statis.
RAM dinamis (DRAM) dibuat dengan sel yang menyimpan data sebagai muatan
pada kapasitor. Ada atau tidak adanya muatan dalam kapasitor ditafsirkan
sebagai biner 1 atau 0. Karena kapasitor memiliki kecenderungan alami untuk
melepaskan, RAMs dinamis memerlukan pengisian periodik menyegarkan untuk
mempertahankan penyimpanan data. Istilah dinamis mengacu pada
kecenderungan muatan yang tersimpan ini bocor, bahkan dengan daya yang terus
diterapkan.
Gambar 5.2a adalah struktur DRAM khas untuk sel individu yang
menyimpan 1 bit. Baris alamat diaktifkan ketika nilai bit dari sel ini akan dibaca
atau ditulis. Transistor bertindak sebagai saklar yang tertutup (memungkinkan
arus mengalir) jika tegangan diterapkan ke garis alamat dan terbuka (tidak ada
aliran arus) jika tidak ada tegangan yang ada pada garis alamat.
Untuk operasi tulis , sinyal tegangan diterapkan ke garis bit; tegangan
tinggi mewakili 1, dan tegangan rendah mewakili sinyal 0.A kemudian
diterapkan ke garis alamat, memungkinkan muatan ditransfer ke kapasitor.
Untuk operasi baca, ketika garis alamat dipilih, transistor menyala dan
muatan yang disimpan pada kapasitor dimasukkan ke garis bit dan ke amplifier
rasa. Penguat rasa membandingkan tegangan kapasitor dengan nilai referensi dan
menentukan apakah sel berisi logika 1 atau logika 0. Pembacaan dari sel
melepaskan kapasitor, yang harus dipulihkan untuk menyelesaikan operasi.
5.1 / MEMORI UTAMA SEMIKONDUKTOR 7
tegangan dc

Baris alamat
T3 T4

T5 C1 C2 T6
Transistor

Penyimpa
kapasitor
nan
T1 T2

Garis bit Tanah


B Tanah

Garis bit Bi t li Ne
Alamat BB
garis
(a) Sel RAM Dinamis (DRAM) (b) Sel RAM Statis (SRAM)

Gambar 5.2 Struktur Sel MemoriTypical


Meskipun sel DRAM digunakan untuk menyimpan satu bit (0 atau 1), pada
dasarnya ini adalah perangkat analog. Kapasitor dapat menyimpan nilai muatan apa pun
dalam rentang; nilai ambang batas menentukan apakah muatan ditafsirkan sebagai 1 atau
0.

Sebaliknya, RAM statis (SRAM) adalah perangkat digital yang menggunakan elemen
logika yang sama yang digunakan dalam prosesor. Dalam SRAM, nilai biner disimpan
menggunakan konfigurasi gerbang logika flip-flop tradisional (lihat Bab 20 untuk
deskripsi sandal jepit). RAM statis akan menyimpan datanya selama daya dipasok ke
sana.
Gambar 5.2b adalah struktur SRAM khas untuk sel individu. Empat transistor ( T1,
T2, T3, T4) dihubungkan silang dalam pengaturan yang menghasilkan keadaan logika yang
stabil. Dalam keadaan logika 1,titik C1 tinggi dan titik C2 rendah; dalam keadaan ini, T1
dan T4 mati dan T2 dan T3 menyala. 1 Dalam keadaan logika 0, titik C1 rendah dan titik C2
tinggi; dalam keadaan ini, T1 dan T4 menyala dan T2 dan T3 mati. Kedua keadaan stabil
selama tegangan arus searah (dc) diterapkan. Berbeda dengan DRAM, tidak diperlukan
refresh untuk menyimpan data.
Seperti dalam DRAM, baris alamat SRAM digunakan untuk membuka atau
menutup sakelar. Garis alamat mengontrol dua transistor ( T5 dan T6). Ketika sinyal
diterapkan pada baris ini, kedua transistor dinyalakan, memungkinkan operasi baca atau
tulis. Untuk operasi tulis, nilai bit yang diinginkan diterapkan ke baris B, sedangkan
pelengkapnya adalah ap-

1 Lingkaran di kepala T3 dan T4 menunjukkan negasi sinyal.


8 BAB 5 / MEMORI INTERNAL
plied ke baris B. Ini memaksa empat transistor ( T1, T2, T3, T4) ke dalam keadaan yang
tepat. Untuk operasi baca, nilai bit dibaca dari baris B.

SRAM VERSUS DRAM Baik RAMs statis dan dinamis bersifat volatil; yaitu, daya
harus terus dipasok ke memori untuk mempertahankan nilai bit. Sel memori dinamis
lebih sederhana dan lebih kecil dari sel memori statis . Dengan demikian, DRAM lebih
padat (sel yang lebih kecil = lebih banyak sel per satuan luas) dan lebih murah daripada
SRAM yang sesuai. Di sisi lain, DRAM membutuhkan sirkuit penyegaran pendukung.
Untuk ingatan yang lebih besar, biaya tetap sirkuit refresh lebih dari dikompensasi oleh
biaya variabel sel DRAM yang lebih kecil . Dengan demikian, DRAMs cenderung
disukai untuk kebutuhan memori yang besar. Poin terakhir adalah bahwa SRAMs
umumnya agak lebih cepat daripada DRAMs. Karena karakteristik relatif ini, SRAM
digunakan untuk memori cache (baik chip on dan off), dan DRAM digunakan untuk
memori utama.

Jenis ROM
Seperti namanya, memori baca-saja (ROM) berisi pola data permanen yang tidak dapat
diubah. ROM adalah nonvolatile; artinya, tidak ada sumber daya yang diperlukan untuk
mempertahankan nilai bit dalam memori. Meskipun dimungkinkan untuk membaca
ROM, tidak mungkin untuk menulis data baru ke dalamnya. Aplikasi penting dari ROM
adalah pemrograman mikro, dibahas dalam Bagian Empat. Aplikasi potensial lainnya
termasuk
• Subrutin perpustakaan untuk fungsi yang sering diinginkan
• Program sistem
• Tabel fungsi
Untuk kebutuhan berukuran sederhana , keuntungan dari ROM adalah bahwa data atau
program secara permanen dalam memori utama dan tidak perlu dimuat dari perangkat
penyimpanan sekunder.
A ROM dibuat seperti chip sirkuit terintegrasi lainnya, dengan
data yang sebenarnya masuk ke dalam chip sebagai bagian dari proses
fabrikasi. Ini menghadirkan dua masalah:
• Langkah penyisipan data mencakup biaya tetap yang relatif besar, apakah satu atau
ribuan salinan ROM tertentu dibuat.
• Tidak ada ruang untuk kesalahan. Jika satu bit salah, seluruh batch ROM harus
dibuang.
Ketika hanya sejumlah kecil ROM dengan konten memori tertentu yang
diperlukan, alternatif yang lebih murah adalah ROM yang dapat diprogram (PROM).
Seperti ROM, PROM tidak berbelit-belit dan dapat ditulis hanya sekali. Untuk PROM,
proses penulisan dilakukan secara elektrik dan dapat dilakukan oleh pemasok atau
pelanggan pada suatu waktu lebih lambat dari fabrikasi chip asli. Peralatan khusus
diperlukan untuk proses penulisan atau "pemrograman". PROM memberikan fleksibilitas
dan kenyamanan. ROM tetap menarik untuk produksi volume tinggi.
5.1 / MEMORI UTAMA SEMIKONDUKTOR 9
Variasi lain pada memori baca-saja adalah memori baca-sebagian besar, yang
berguna untuk aplikasi di mana operasi membaca jauh lebih sering daripada operasi tulis
tetapi penyimpanan nonvolatile diperlukan. Ada tiga bentuk umum dari memori baca-
sebagian besar: EPROM, EEPROM, dan memori flash.
Memori baca-saja yang dapat diprogram secara optik (EPROM) dibaca dan
ditulis secara elektrik, seperti halnya PROM. Namun, sebelum operasi tulis, semua sel
penyimpanan harus dihapus ke keadaan awal yang sama dengan paparan chip yang
dikemas terhadap radiasi ultraviolet. Penghapusan dilakukan dengan menyinari sinar
ultraviolet yang intens melalui jendela yang dirancang ke dalam chip memori. Proses
penghapusan ini dapat dilakukan berulang kali; setiap penghapusan dapat memakan
waktu hingga 20 menit untuk dilakukan. Dengan demikian, EPROM dapat diubah
beberapa kali dan, seperti ROM dan PROM, menyimpan datanya hampir tanpa batas.
Untuk jumlah penyimpanan yang sebanding, EPROM lebih mahal daripada PROM,
tetapi memiliki keuntungan dari kemampuan beberapa pembaruan.
A Bentuk memori baca-sebagian besar yang lebih menarik
adalah memori baca-saja yang dapat diprogram secara elektrik
(EEPROM). Ini adalah memori baca-sebagian besar yang dapat ditulis kapan
saja tanpa menghapus konten sebelumnya; hanya byte atau byte yang
ditujukan yang diperbarui. Operasi tulis membutuhkan waktu jauh lebih
lama daripada operasi baca, pada urutan beberapa ratus mikrodetik per byte.
EEPROM menggabungkan keuntungan dari nonvolatility dengan
fleksibilitas yang diperbarui di tempat, menggunakan kontrol bus biasa,
alamat, dan jalur data. EEPROM lebih mahal daripada EPROM dan juga
kurang padat, mendukung lebih sedikit bit per chip.
Bentuk lain dari memori semikonduktor adalah memori flash (dinamakan
demikian karena kecepatan yang dapat diprogram ulang). Pertama kali diperkenalkan
pada pertengahan 1980-an, memori flash adalah perantara antara EPROM dan EEPROM
baik dalam biaya dan fungsionalitas. Seperti EEPROM, memori flash menggunakan
teknologi penghapusan listrik. Seluruh memori flash dapat dihapus dalam satu atau
beberapa detik, yang jauh lebih cepat daripada tambahan EPROM.In, adalah mungkin
untuk menghapus hanya blok memori daripada seluruh chip. Memori flash mendapatkan
namanya karena microchip diatur sehingga bagian dari sel memori terhapus dalam satu
tindakan atau "flash." Namun, memori flash tidak memberikan penghapusan tingkat byte.
Seperti EPROM, memori flash hanya menggunakan satu transistor per bit, sehingga
mencapai kepadatan tinggi (dibandingkan dengan EEPROM) dari
EPROM.
Logika Chip
Seperti produk sirkuit terintegrasi lainnya, memori semikonduktor hadir dalam chip
kemasan (Gambar 2.7). Setiap chip berisi array sel memori.
Dalam hierarki memori secara keseluruhan, kami melihat bahwa ada trade-off di
antara kecepatan, kapasitas, dan biaya. Trade-off ini juga ada ketika kita
mempertimbangkan organisasi sel memori dan logika fungsional pada chip. Untuk
memori semikonduktor, salah satu masalah desain utama adalah jumlah bit data yang
dapat dibaca / ditulis pada suatu waktu. Pada satu ekstrem adalah organisasi di mana
10 BAB 5 / MEMORI INTERNAL
pengaturan fisik sel dalam array sama dengan pengaturan logis (seperti yang dirasakan
oleh prosesor) kata-kata dalam memori. Array diatur ke dalam kata-kata W dari B bit
masing-masing. Misalnya, chip 16-Mbit dapat diatur sebagai kata 1M 16-bit . Pada
ekstrem lainnya adalah apa yang disebut organisasi 1-bit-per-chip, di mana data dibaca /
ditulis 1 bit pada suatu waktu. Kami akan mengilustrasikan organisasi chip memori
dengan DRAM; Organisasi ROM serupa, meskipun lebih sederhana.
Gambar 5.3 menunjukkan organisasi khas DRAM 16-Mbit. Dalam hal ini, 4 bit
dibaca atau ditulis sekaligus. Secara logis, array memori diatur sebagai empat array
persegi 2048 oleh 2048 elemen. Berbagai pengaturan fisik dimungkinkan.
Bagaimanapun, elemen array dihubungkan oleh garis horizontal (baris) dan vertikal
(kolom). Setiap garis horizontal terhubung ke terminal Pilih setiap sel di barisnya ; setiap
garis vertikal terhubung ke terminal Data-In /Sense dari setiap sel di kolomnya.
Baris alamat menyediakan alamat kata yang akan dipilih. Diperlukan total garis log2
W. Dalam contoh kami, 11 baris alamat diperlukan untuk memilih salah satu dari 2048
baris. 11 baris ini dimasukkan ke dalam decoder baris, yang memiliki 11 baris input dan
2048 baris untuk output. Logika decoder mengaktifkan satu dari output 2048 tergantung
pada pola bit pada 11 baris input (211 = 2048).
11 baris alamat tambahan pilih salah satu kolom 2048 dengan 4 bit per kolom.
Empat baris data digunakan untuk input dan output dari 4 bit ke dan dari buffer data.
Pada input (tulis), driver bit dari setiap baris bit diaktifkan untuk 1 atau 0 sesuai dengan
nilai garis data yang sesuai. Pada output (baca), nilai setiap garis bit dilewatkan melalui
amplifier rasa dan disajikan ke garis data. Baris baris memilih baris sel mana yang
digunakan untuk membaca atau menulis.
Karena hanya 4 bit yang dibaca / ditulis ke DRAM ini, harus ada beberapa DRAMs
yang terhubung ke pengontrol memori untuk membaca / menulis kata data ke bus.
Perhatikan bahwa hanya ada 11 baris alamat (A0-A10), setengah dari jumlah yang
Anda harapkan untuk array 2048 * 2048. Hal ini dilakukan untuk menghemat jumlah pin.
22 baris alamat yang diperlukan dilewatkan melalui logika pilih di luar chip dan
multipleks ke 11 baris alamat. Pertama, 11 sinyal alamat diteruskan ke chip untuk
menentukan alamat baris array, dan kemudian 11 sinyal alamat lainnya disajikan untuk
alamat kolom . Sinyal-sinyal ini disertai dengan alamat baris se-

Sinyal lect (RAS) dan column address select (CAS) untuk memberikan waktu pada chip.

Pin write enable (WE) dan output enable (OE) menentukan apakah operasi tulis
atau baca dilakukan. Dua pin lainnya, tidak ditampilkan pada Gambar 5.3, adalah ground
(Vss) dan sumber tegangan (Vcc).
Selain itu, pengalamatan multipleks ditambah penggunaan array persegi
menghasilkan empat kali lipat ukuran memori dengan setiap chip memori generasi baru.
Satu pin lagi yang ditujukan untuk menangani menggandakan jumlah baris dan kolom,
sehingga ukuran memori chip tumbuh dengan faktor 4.
RAS CAS KAM Œ
I

Waktu dan kontrol

Refresh MUX
konter

Mend Mend
• Array memori
alamat
ayung de-
ayung
A0 • (2048 2048 4)
Buffer Coder
A1 •


• • • •

Input data
A10 Kolom Buffer D1
alamat Sirkuit penyegaran D2
D3
Buffer Data keluaran D4
Buffer
Decoder kolom

Gambar 5.3 16 Megabit DRAM (4M) * 4)


5
16
12 BAB 5 / MEMORI INTERNAL
Gambar 5.3 juga menunjukkan dimasukkannya sirkuit refresh. Semua DRAMs
memerlukan operasi refresh. Teknik sederhana untuk menyegarkan adalah, pada dasarnya, untuk
menonaktifkan chip DRAM sementara semua sel data disegarkan. Penghitung refresh
melangkah melalui semua nilai baris. Untuk setiap baris, garis output dari penghitung refresh
dipasok ke decoder baris dan garis RAS diaktifkan. Data dibaca dan ditulis kembali ke lokasi
yang sama. Hal ini menyebabkan setiap sel di baris di baris disegarkan.

Kemasan Chip
Seperti disebutkan dalam Bab 2, sirkuit terpadu dipasang pada paket yang berisi pin untuk
koneksi ke dunia luar.
Gambar 5.4a menunjukkan contoh paket EPROM, yang merupakan chip 8-Mbit yang
diatur sebagai 1M * 8. Dalam hal ini, organisasi diperlakukan sebagai paket satu kata per chip.
Paket ini mencakup 32 pin, yang merupakan salah satu ukuran paket chip standar . Pin
mendukung garis sinyal berikut:
• Alamat kata yang diakses. Untuk 1 juta kata, diperlukan total 20 (220 = 1M) pin (A0–A19).
• Data yang akan dibacakan, terdiri dari 8 baris (D0-D7).
• Catu daya ke chip (Vcc).
• Pin tanah (Vss).
• Pin aktifkan (CE) chip. Karena mungkin ada lebih dari satu chip memori, yang masing-
masing terhubung ke bus alamat yang sama, pin CE digunakan untuk menunjukkan
apakah alamat tersebut valid untuk chip ini atau tidak . Pin CE diaktifkan oleh

Vcc 1 24 Vss
4M 4
D1 2 23 D4
D2 3 22 D3
KAM 4 21 CAS
I
RAS 5 20 Œ
NC 6 24-Celupkan19 A9
Pin
A10 7 0.6" 18 A8
A0 8 17 A7
A1 9 16 A6
A2 10 15 A5
A3 11 14 A4
Vcc 12 Tampilan 13 Vss
Atas

(a) DRAM EPROM (b) 16-Mbit 8-Mbit

Gambar 5.4 Pin dan Sinyal Paket MemoriTypical


5.1 / MEMORI UTAMA SEMIKONDUKTOR
13
logika yang terhubung ke bit tingkat tinggi dari bus alamat (yaitu, bit alamat di atas A19).
Penggunaan sinyal ini diilustrasikan saat ini.
• Tegangan program (Vpp) yang disediakan selama pemrograman (operasi tulis).
Konfigurasi pin DRAM khas ditampilkan pada Gambar 5.4b, untuk chip 16-Mbit yang
diatur sebagai 4M * 4. Ada beberapa perbedaan dari chip ROM. Karena RAM dapat diperbarui,
pin data adalah input / output. Pin write enable (WE) dan output enable (OE) menunjukkan
apakah ini adalah operasi tulis atau baca. Karena DRAM diakses berdasarkan baris dan kolom,
dan alamatnya multipleks, hanya 11 pin alamat yang diperlukan untuk menentukan kombinasi
baris / kolom 4M (211 * 211 = 222 = 4M). Fungsi pin pilih alamat baris (RAS) dan pemilihan alamat
kolom (CAS) telah dibahas sebelumnya. Akhirnya, pin no connect (NC) disediakan sehingga
ada jumlah pin yang genap.

Organisasi Modul
Jika chip RAM hanya berisi 1 bit per kata, maka jelas kita akan membutuhkan setidaknya
sejumlah chip yang sama dengan jumlah bit per kata. Sebagai contoh, Gambar 5.5 menunjukkan
Decode 1 dari

512 Kata-kata
Alamat memori 512
dengan
512

daftar (MBR) ChipSedik


#1
• it


9 Decode 1 dari
512 sedikit- Buffer memori

• sense daftar (MBR)

1
2
9
3
• 4

• 5
6
7
8
Decode 1 dari

512 Kata-kata
512
dengan
512

ChipSedik
#1
it

Decode 1 dari
512 sedikit-
sense

Gambar 5.5256-KByte Memory Organization


14 BAB 5 / MEMORI INTERNAL

Gambar 5.61-Mbyte Memory Organization

bagaimana modul memori yang terdiri dari kata-kata 256K 8-bit dapat diatur. Untuk kata 256K ,
alamat 18-bit diperlukan dan dipasok ke modul dari beberapa sumber eksternal (misalnya, garis
alamat bus tempat modul terpasang). Alamat disajikan ke 8 chip 256K * 1-bit, yang masing-
masing menyediakan input / output 1 bit.
Organisasi ini bekerja selama ukuran memori sama dengan jumlah bit per chip. Dalam
kasus di mana memori yang lebih besar diperlukan, berbagai chip diperlukan. Gambar 5.6
menunjukkan kemungkinan organisasi memori yang terdiri dari 1 juta kata dengan 8 bit per
kata. Dalam hal ini, kami memiliki empat kolom chip, setiap kolom berisi kata-kata 256K yang
disusun seperti pada Gambar 5.5. Untuk kata 1M, diperlukan 20 baris alamat. 18 bit paling tidak
signifikan dialihkan ke semua 32 modul. Urutan tinggi 2 bit adalah input ke modul logika pilih
kelompok yang mengirimkan sinyal aktifkan chip ke salah satu dari empat kolom modul.

Memori Interleaved Memory


Simulator Interleaved Memory
Memori utama terdiri dari koleksi chip memori DRAM. Sejumlah chip dapat dikelompokkan
bersama untuk membentuk bank memori. Dimungkinkan untuk mengatur bank memori dengan
cara yang dikenal sebagai memori interleaved. Setiap bank secara mandiri dapat melayani
permintaan baca atau tulis memori, sehingga sistem dengan bank K dapat melayani permintaan
K secara bersamaan, meningkatkan tingkat baca atau tulis memori dengan faktor K. Jika kata-
kata memori berturut-turut disimpan di bank yang berbeda, maka transfer blok memori
dipercepat. Lampiran E mengeksplorasi topik memori yang diselingi.
5.2 / KOREKSI KESALAHAN
15
5.2 KOREKSI KESALAHAN
Sistem memori semikonduktor dapat menyebabkan kesalahan. Ini dapat dikategorikan
sebagai kegagalan keras dan kesalahan lunak. Kegagalan keras adalah cacat fisik
permanen sehingga sel memori atau sel yang terkena tidak dapat menyimpan data secara
andal tetapi terjebak pada 0 atau 1 atau beralih tidak menentu antara 0 dan 1. Kesalahan
keras dapat disebabkan oleh penyalahgunaan lingkungan yang keras , cacat manufaktur ,
dan keausan. Kesalahan lunak adalah peristiwa acak dan tidak merusak yang mengubah
isi satu atau lebih sel memori tanpa merusak memori. Kesalahan lunak dapat disebabkan
oleh masalah catu daya atau partikel alfa. Partikel-partikel ini dihasilkan dari peluruhan
radioaktif dan sangat umum karena inti radioaktif ditemukan dalam jumlah kecil di
hampir semua bahan. Kesalahan keras dan lunak jelas tidak diinginkan, dan sebagian
besar sistem memori utama modern mencakup logika untuk mendeteksi dan memperbaiki
kesalahan.
Gambar 5.7 menggambarkan secara umum bagaimana proses dilakukan. Ketika
data akan dibaca ke dalam memori, perhitungan, digambarkan sebagai fungsi f, dilakukan
pada data untuk menghasilkan kode. Kode dan data disimpan. Jadi, jika kata M-bit data
akan disimpan dan kodenya panjang bit K, maka ukuran sebenarnya dari kata yang
disimpan adalah bit M + K.
Ketika kata yang disimpan sebelumnya dibacakan, kode digunakan untuk
mendeteksi dan mungkin memperbaiki kesalahan. Satu set bit kode K baru dihasilkan
dari bit data M dan dibandingkan dengan bit kode yang diambil. Perbandingan
menghasilkan salah satu dari tiga hasil:
• Tidak ada kesalahan yang terdeteksi. Bit data yang diambil dikirim.
• Kesalahan terdeteksi, dan dimungkinkan untuk memperbaiki kesalahan. Bit data
ditambah bit koreksi kesalahan dimasukkan ke dalam korektor, yang menghasilkan
satu set bit M yang dikoreksi untuk dikirim.
• Kesalahan terdeteksi, tetapi tidak mungkin untuk memperbaikinya. Kondisi ini
dilaporkan.
Kode yang beroperasi dengan cara ini disebut sebagai kode koreksi kesalahan.
Kode ditandai dengan jumlah kesalahan bit dalam kata yang dapat diperbaiki dan
dideteksi.
16 BAB 5 / MEMORI INTERNAL
Sinyal
kesalahan

Data keluar M
Korektor

Data di M M K
f

K Ingatan K Membandin
f gkan

Gambar 5.7 Fungsi Kode KoreksiError


(a) AB (b)
1 1

1 1
1 0

0
1 0 0

(c 1 (d 1
) ) 0
1 1
1 0 1 0

0 0
0 0 0

Gambar 5.8Hamming Kode Koreksi Kesalahan

Yang paling sederhana dari kode koreksi kesalahan adalah kode Hamming yang dirancang
oleh Richard Hamming di Bell Laboratories. Gambar 5.8 menggunakan diagram Venn untuk
menggambarkan penggunaan kode ini pada kata-kata 4-bit (M = 4). Dengan tiga lingkaran
berpotongan, ada tujuh kompartemen. Kami menetapkan 4 bit data ke kompartemen dalam
(Gambar 5.8a). Kompartemen yang tersisa diisi dengan apa yang disebut bit paritas. Setiap bit
paritas dipilih sehingga jumlah total 1s dalam lingkarannya genap (Gambar 5.8b). Jadi, karena
lingkaran A mencakup tiga data 1s, bit paritas dalam lingkaran itu diatur ke 1. Sekarang, jika
kesalahan mengubah salah satu bit data (Gambar 5.8c), mudah ditemukan. Dengan memeriksa
17
bit paritas, perbedaan ditemukan di lingkaran A dan lingkaran C tetapi tidak di lingkaran B.
Hanya satu dari tujuh kompartemen dalam A dan C tetapi tidak B.Kesalahan karena itu dapat
diperbaiki dengan mengubah bit itu.
Untuk memperjelas konsep yang terlibat, kami akan mengembangkan kode yang dapat
mendeteksi dan memperbaiki kesalahan satu bit dalam kata-kata 8-bit.
Untuk memulai, mari kita tentukan berapa lama kode harus. Mengacu pada Gambar 5.7,
logika perbandingan menerima sebagai input dua nilai K-bit. Perbandingan bit-by-bit dilakukan
dengan mengambil exclusive-OR dari dua input. Hasilnya disebut kata sindrom. Dengan
demikian, setiap bit sindrom adalah 0 atau 1 sesuai dengan apakah ada atau tidak cocok dalam
posisi bit untuk dua input.
Oleh karena itu kata sindrom adalah K bits lebar dan memiliki kisaran antara 0 dan 2K - 1.
Nilai 0 menunjukkan bahwa tidak ada kesalahan yang terdeteksi, meninggalkan nilai 2K - 1 untuk
ditunjukkan, jika ada kesalahan, bit mana yang salah. Sekarang, karena kesalahan dapat terjadi
pada salah satu bit data M atau bit pemeriksaan K, kita harus memiliki
2K - 1 Ú M + K
5.2 / KOREKSI KESALAHAN

Tabel 5.2Increase dalam Panjang Kata dengan Koreksi Kesalahan


Koreksi Kesalahan
Tunggal/
Koreksi Kesalahan Tunggal Deteksi Kesalahan Ganda

Bit Data Periksa Bit % Meningkat Periksa Bit %


Meningkat
8 4 50 5 62.5
16 5 31.25 6 37.5
32 6 18.75 7 21.875
64 7 10.94 8 12.5
128 8 6.25 9 7.03
256 9 3.52 10 3.91
Ketidaksetaraan ini memberikan jumlah bit yang diperlukan untuk memperbaiki
kesalahan bit tunggal dalam kata yang berisi bit data M. Misalnya, untuk kata dari 8 bit
data (M = 8), kita memiliki
• K = 3: 23 - 1 6 8 + 3
• K = 4: 24 - 1 7 8 + 4
Dengan demikian, delapan bit data membutuhkan empat bit cek. Tiga kolom pertama
tabel 5.2 mencantumkan jumlah bit cek yang diperlukan untuk berbagai panjang kata
data.
Untuk kenyamanan, kami ingin menghasilkan sindrom 4-bit untuk kata data 8-bit
dengan karakteristik berikut:
• Jika sindrom ini mengandung semua 0s, tidak ada kesalahan yang terdeteksi.
• Jika sindrom ini berisi satu dan hanya satu bit yang diatur ke 1, maka kesalahan
telah terjadi di salah satu dari 4 bit cek. Tidak diperlukan koreksi.
18 BAB 5 / MEMORI INTERNAL
• Jika sindrom ini berisi lebih dari satu bit yang diatur ke 1, maka nilai numerik
sindrom menunjukkan posisi bit data yang salah. Bit data ini dibalik untuk koreksi.
Untuk mencapai karakteristik ini, data dan bit cek diatur menjadi
Kata 12-bit seperti yang digambarkan pada Gambar 5.9. Posisi bit diberi nomor dari 1
hingga 12. Posisi bit yang nomor posisinya adalah kekuatan 2 ditunjuk sebagai bit cek.
Bit cek dihitung sebagai berikut, di mana simbol { menunjuk ex-
C1 = D1 { D2 { D4 { D5 { D7 clusive-OR operasi:
C2 = D1 { D3 { D4 { D6 { D7 C4 = D2 { D3 { D4 {
D8
C8 = D5 { D6 { D7 { D8
Posisi bit 12 11 10 9 8 7 6 5 4 3 2 1

Nomor 1100 1011 1010 1001 1000 011 0110 0101 0100 0011 0010 0001
posisi 1
Bit data D8 D7 D6 D5 D4 D3 D2 D1

Periksa C8 C4 C2 C1
bit
Gambar 5.9Layout dari Bit Data dan Periksa Bit
Setiap bit cek beroperasi pada setiap bit data yang nomor posisinya berisi 1 di
posisi bit yang sama dengan nomor posisi bit cek itu. Dengan demikian, data bit posisi 3,
5, 7, 9, dan 11 (D1, D2, D4, D5, D7) semuanya berisi 1 dalam bit paling signifikan dari
nomor posisi mereka seperti halnya C1; posisi bit 3, 6, 7, 10, dan 11 semuanya
mengandung 1 di posisi bit kedua, seperti halnya C2; dan seterusnya. Melihat ke arah
gi
lain, posisi bit n diperiksa oleh bit Ci tersebut sehingga = n. Misalnya, posisi 7 diperiksa
oleh bit di posisi 4, 2, dan 1; dan 7 = 4 + 2 + 1.
Mari kita verifikasi bahwa skema ini bekerja dengan sebuah contoh. Asumsikan
bahwa kata input 8-bit 00111001, dengan bit data D1 di posisi paling kanan .
Perhitungannya adalah sebagai berikut:

C1 = 1 { 0 { 1 { 1 { 0 = 1
C2 = 1 { 0 { 1 { 1 { 0 = 1
C4 = 0 { 0 { 1 { 0 = 1
C8 = 1 { 1 { 0 { 0 = 0
Misalkan sekarang data bit 3 mengalami kesalahan dan diubah dari 0 menjadi 1.Ketika
bit cek dihitung ulang, kita memiliki
C1 = 1 { 0 { 1 { 1 { 0 = 1
C2 = 1 { 1 { 1 { 1 { 0 = 0
C4 = 0 { 1 { 1 { 0 = 0
C8 = 1 { 1 { 0 { 0 = 0
Ketika bit cek baru dibandingkan dengan bit cek lama, kata sindrom terbentuk:
C8C4C2C1
19
0111

Hasilnya adalah 0110, menunjukkan bahwa posisi bit 6, yang berisi data bit 3, salah.
Gambar 5.10 menggambarkan perhitungan sebelumnya. Data dan bit cek
diposisikan dengan benar dalam kata 12-bit. Empat bit data memiliki nilai 1 (diarsir di
Posisi bit 12 11 10 9 8 7 6 5 4 3 2 1

Nomor 1100 1011 1010 1001 1000 0111 0110 0101 0100 0011 0010 0001
posisi
Bit data D8 D7 D6 D5 D4 D3 D2 D1

Periksa C8 C4 C2 C1
bit
Kata 0 0 1 1 0 1 0 0 1 1 1 1
disimpan
sebagai
Kata 0 0 1 1 0 1 1 0 1 1 1 1
diambil
sebagai
Nomor 1100 1011 1010 1001 1000 0111 0110 0101 0100 0011 0010 0001
posisi
Periksa 0 0 0 1
bit
Gambar 5.10Check Perhitungan Bit
5.3 / ORGANISASI DRAM TINGKAT LANJUT
(s ) (b) (c)
e
b 0 0 0
u 0 1 1 1
a 1 1 0
1 0 1 0 1 0
h
0 0
1 1

(d) (e) (f)

0 0 0
1 1 1 1 1 1
0 0 0
1 0 1 1 1 1

0 0 0
1 1 1

Gambar 5.11Hamming Kode SEC-DEC

tabel), dan nilai posisi bit mereka adalah XORed untuk menghasilkan kode Hamming
0111, yang membentuk empat digit cek. Seluruh blok yang disimpan adalah
001101001111.Misalkan sekarang data bit 3,di posisi bit 6,menopang kesalahan dan
diubah dari 0 menjadi 1. Blok yang dihasilkan 001101101111, dengan kode Hamming
20 BAB 5 / MEMORI INTERNAL
0111.An XOR dari kode Hamming dan semua nilai posisi bit untuk bit data yang tidak
nol menghasilkan 0110. Hasil nonzero mendeteksi kesalahan dan menunjukkan bahwa
kesalahan berada di posisi bit 6.
Kode yang baru saja dijelaskan dikenal sebagai kode koreksi kesalahan tunggal
(SEC). Lebih umum, memori semikonduktor dilengkapi dengan kode koreksi kesalahan
tunggal, deteksi kesalahan ganda (SEC-DED). Seperti yang ditunjukkan tabel 5.2, kode
tersebut memerlukan satu bit tambahan dibandingkan dengan kode SEC.
Gambar 5.11 menggambarkan cara kerja kode semacam itu, sekali lagi dengan kata
data 4-bit. Urutan menunjukkan bahwa jika dua kesalahan terjadi (Gambar 5.11c),
prosedur pengecekan tersesat (d) dan memperburuk masalah dengan membuat kesalahan
ketiga (e). Untuk mengatasi masalah ini, bit kedelapan ditambahkan yang diatur sehingga
jumlah total 1s dalam diagram merata. Bit paritas ekstra menangkap kesalahan (f).
Kode koreksi kesalahan meningkatkan keandalan memori dengan mengorbankan
kompleksitas tambahan. Dengan organisasi 1-bit-per-chip, kode SEC-DED umumnya
dianggap memadai. Misalnya, implementasi IBM 30xx menggunakan kode SECDED 8-
bit untuk setiap 64 bit data dalam memori utama. Dengan demikian, ukuran memori
utama sebenarnya sekitar 12% lebih besar dari yang terlihat oleh pengguna. Komputer
VAX menggunakan SEC-DED 7-bit untuk setiap 32 bit memori, untuk overhead 22%.
Sejumlah DRAMs kontemporer menggunakan 9 bit cek untuk setiap 128 bit data, untuk
overhead 7% [SHAR97].

5.3 ORGANISASI DRAM TINGKAT LANJUT


Seperti yang dibahas dalam Bab 2, salah satu hambatan sistem yang paling kritis ketika
menggunakan prosesor berkinerja tinggi adalah antarmuka untuk memori internal utama .
Antarmuka ini adalah jalur terpenting di seluruh sistem komputer. Bangunan dasar
Tabel 5.3Performance Perbandingan Beberapa Alternatif DRAM
Frekuensi Clock Kecepatan
Transfer
(MHz) (GB/s) Waktu Akses (ns) Jumlah
Pin
SDRAM 166 1.3 18 168
DDR 200 3.2 12.5 184
RDRAM 600 4.8 12 162
blok memori utama tetap menjadi chip DRAM, seperti yang terjadi selama beberapa dekade;
Sampai saat ini, tidak ada perubahan signifikan dalam arsitektur DRAM sejak awal 1970-an.
Chip DRAM tradisional dibatasi baik oleh arsitektur internal dan oleh antarmuka ke bus memori
prosesor.
Kami telah melihat bahwa satu serangan pada masalah kinerja memori utama DRAM
adalah memasukkan satu atau lebih tingkat cache SRAM berkecepatan tinggi antara memori
utama DRAM dan prosesor. Tapi SRAM jauh lebih mahal daripada DRAM, dan memperluas
ukuran cache di luar titik tertentu menghasilkan pengembalian yang berkurang.
Dalam beberapa tahun terakhir, sejumlah perangkat tambahan pada arsitektur DRAM
dasar telah dieksplorasi, dan beberapa di antaranya sekarang ada di pasaran. Skema yang saat ini
mendominasi pasar adalah SDRAM, DDR-DRAM, dan RDRAM. Tabel 5.3 memberikan
21
perbandingan kinerja. CDRAM juga telah menerima perhatian yang cukup besar. Kami
memeriksa masing-masing pendekatan ini di bagian ini.

DRAM Sinkron
Salah satu bentuk DRAM yang paling banyak digunakan adalah DRAM sinkron (SDRAM)
[VOGL94]. Berbeda dengan DRAM tradisional, yang asinkron, SDRAM bertukar data dengan
prosesor disinkronkan ke sinyal clock eksternal dan berjalan pada kecepatan penuh dari prosesor
/ bus memori tanpa memaksakan keadaan tunggu.
Dalam DRAM yang khas, prosesor menyajikan alamat dan tingkat kontrol ke memori,
menunjukkan bahwa satu set data di lokasi tertentu dalam memori harus dibaca dari atau ditulis
ke dalam DRAM. Setelah penundaan, waktu akses, DRAM menulis atau membaca data. Selama
penundaan waktu akses, DRAM melakukan berbagai fungsi internal, seperti mengaktifkan
kapasitansi tinggi baris dan baris kolom, merasakan data, dan merutekan data melalui buffer
output. Prosesor hanya harus menunggu melalui penundaan ini, memperlambat kinerja sistem.
Dengan akses sinkron, DRAM memindahkan data masuk dan keluar di bawah kendali jam
sistem. Prosesor atau master lainnya mengeluarkan instruksi dan informasi alamat, yang dibcap
oleh DRAM. DRAM kemudian merespon setelah sejumlah siklus clock. Sementara itu, master
dapat dengan aman melakukan tugas lain saat SDRAM memproses permintaan.
Gambar 5.12 menunjukkan logika internal IBM 64-Mb SDRAM [IBM01], yang khas dari
organisasi SDRAM , dan Tabel 5.4 mendefinisikan berbagai tugas pin.
Gambar 5.12 RAM Dinamis Sinkron (SDRAM)
5
17
24 BAB 5 / MEMORI INTERNAL
Tabel 5.4SDRAM Pin Tugas
A0 hingga A13 Input alamat

CLK Input jam


CKE Aktifkan jam
CS Pilih chip
RAS Strobo alamat baris
CAS Strobo alamat kolom
KAMI Aktifkan tulis
DQ0 hingga DQ7 Input/output data
DQM Masker data
SDRAM menggunakan mode burst untuk menghilangkan waktu penyiapan alamat dan
waktu precharge baris dan baris kolom setelah akses pertama. Dalam mode burst,
serangkaian bit data dapat clock keluar dengan cepat setelah bit pertama telah diakses.
Mode ini berguna ketika semua bit yang akan diakses secara berurutan dan di baris array
yang sama dengan akses awal. Selain itu, SDRAM memiliki arsitektur internal multi-bank
yang meningkatkan peluang untuk paralelisme on-chip.
Register mode dan logika kontrol terkait adalah fitur utama lain yang membedakan
SDRAMs dari DRAMs.It konvensional menyediakan mekanisme untuk menyesuaikan
SDRAM agar sesuai dengan kebutuhan sistem tertentu. Register mode menentukan
panjang burst, yang merupakan jumlah unit data terpisah yang dimasukkan secara sinkron
ke bus. Register juga memungkinkan programmer untuk menyesuaikan latensi antara
penerimaan permintaan baca dan awal transfer data.
SDRAM berkinerja terbaik ketika mentransfer blok besar data secara serial, seperti
untuk aplikasi seperti pengolah kata, spreadsheet, dan multimedia.
Gambar 5.13 menunjukkan contoh operasi SDRAM. Dalam hal ini, ledakan

panjang adalah 4 dan latensi adalah 2. Perintah baca burst dimulai dengan memiliki CS

dan CAS rendah sambil memegang RAS dan KAMI tinggi-tinggi di tepi jam yang
meningkat. Input alamat menentukan alamat kolom awal untuk burst, dan register mode
menetapkan jenis burst (sequential atau interleave) dan burst length (1, 2, 4, 8, full page).
Penundaan dari awal perintah hingga kapan data dari

sel pertama yang muncul pada output sama dengan nilai latensi CAS yang diatur dalam
register mode.

T0 T1 T2 T3 T4 T5 T6 T7 T8

CLK

PERINTAH BACA A NOP NOP NOP NOP NOP NOP NOP NOP

DQs DOUT A 0 DOUT A 1 DOUT A 2 DOUT A 3


25
Gambar 5.13SDRAM Read Timing (burst length = 4, latensi CAS = 2)
5.3 / ORGANISASI DRAM TINGKAT LANJUT

Sekarang ada versi SDRAM yang disempurnakan, yang dikenal sebagai double data
rate SDRAM (DDR-SDRAM) yang mengatasi batasan sekali per siklus. DDRSDRAM
dapat mengirim data ke prosesor dua kali per siklus clock.

Rambus DRAM
RDRAM, dikembangkan oleh Rambus [FARM92, CRIS97], telah diadopsi oleh Intel untuk
prosesor Pentium dan Itanium. Ini telah menjadi pesaing utama SDRAM. Chip RDRAM
adalah paket vertikal, dengan semua pin di satu sisi. Chip bertukar data dengan prosesor
lebih dari 28 kabel tidak lebih dari 12 sentimeter. Bus ini dapat menangani hingga 320 chip
RDRAM dan diberi peringkat 1,6 GBps.
Bus RDRAM khusus memberikan informasi alamat dan kontrol menggunakan
protokol berorientasi blok asinkron . Setelah waktu akses 480 ns awal, ini menghasilkan
kecepatan data 1,6 GBps. Apa yang membuat kecepatan ini mungkin adalah bus itu sendiri,
yang mendefinisikan impedansi, clocking, dan sinyal sangat tepat. Alih-alih dikendalikan
oleh sinyal RAS, CAS, R / W, dan CE eksplisit yang digunakan dalam DRAMs
konvensional, RDRAM mendapat permintaan memori melalui bus berkecepatan tinggi.
Permintaan ini berisi alamat yang diinginkan, jenis operasi, dan jumlah byte dalam operasi.
Gambar 5.14 menggambarkan tata letak RDRAM. Konfigurasi terdiri dari pengontrol
dan sejumlah modul RDRAM yang terhubung melalui bus umum. Pengontrol berada di
salah satu ujung konfigurasi, dan ujung bus adalah penghentian paralel jalur bus. Bus ini
mencakup 18 jalur data (16 data aktual, dua paritas) bersepeda dengan kecepatan dua kali
lipat; yaitu, 1 bit dikirim di tepi depan dan mengikuti setiap sinyal clock. Ini menghasilkan
kecepatan sinyal pada setiap baris data 800 Mbps. Ada satu set terpisah dari 8 baris (RC)
yang digunakan untuk sinyal alamat dan kontrol. Ada juga sinyal clock yang dimulai di
ujung dari pengontrol merambat ke ujung pengontrol dan kemudian loop kembali. Modul
RDRAM mengirimkan data ke pengontrol secara sinkron ke jam untuk dikuasai, dan
pengontrol mengirimkan data ke RDRAM secara sinkron dengan sinyal clock ke arah yang
berlawanan. Jalur bus yang tersisa termasuk tegangan referensi, tanah, dan sumber daya.

Pengendali
RDRAM 1 RDRAM 2 ••• RDRAM n
Vterm
INITo
INIT
•••
Bus data [18:0]
RC [7:0]
RClk [2]
TClk [2]
Vref
Gnd (32/18)
Vd(4)

Gambar 5.14RDRAM Struktur


26 BAB 5 / MEMORI INTERNAL
DDR SDRAM
SDRAM dibatasi oleh fakta bahwa ia hanya dapat mengirim data ke prosesor sekali per siklus jam
bus . Versi baru SDRAM, yang disebut sebagai SDRAM tingkat data ganda dapat mengirim data
dua kali per siklus jam, sekali di tepi kenaikan pulsa jam dan sekali di tepi yang jatuh.
DDR DRAM dikembangkan oleh JEDEC Solid State Technology Association, badan
standardisasi semikonduktor-engineering Electronic Industries Alliance. Banyak perusahaan
membuat chip DDR, yang banyak digunakan di komputer desktop dan server.
Gambar 5.15 menunjukkan waktu dasar untuk pembacaan DDR. Transfer data disinkronkan
ke tepi jam yang naik dan turun. Hal ini juga disinkronkan dengan sinyal dua arah data strobe
(DQS) yang disediakan oleh pengontrol memori selama membaca dan oleh DRAM selama
menulis. Dalam implementasi khas DQS diabaikan selama pembacaan. Penjelasan tentang
penggunaan DQS pada tulisan berada di luar jangkauan kami; lihat [JACO08] untuk detailnya.

Selai

RAS

CAS

Mend Kolom
Alamat
alamat
ayung alamat

DQ Sah Sah Sah Sah


data data data data

DQS

RAS = Alamat baris pilih


CAS = Alamat kolom pilih
DQ = Data (masuk atau keluar) DQS
= DQ pilih

Gambar 5.15DDR SDRAM Waktu Jalan


5.4 / SITUS BACAAN DAN WEB YANG DIREKOMENDASIKAN
27
Ada dua generasi perbaikan teknologi DDR. DDR2 meningkatkan kecepatan transfer
data dengan meningkatkan frekuensi operasional chip RAM dan dengan meningkatkan
buffer prefetch dari 2 bit menjadi 4 bit per chip. Buffer prefetch adalah cache memori yang
terletak pada chip RAM. Buffer memungkinkan chip RAM untuk preposisi bit untuk
ditempatkan pada basis data secepat mungkin. DDR3, diperkenalkan pada tahun 2007,
meningkatkan ukuran buffer prefetch menjadi 8 bit.
Secara teoritis, modul DDR dapat mentransfer data pada clock rate dalam kisaran 200
hingga 600 MHz; modul DDR2 ditransfer pada clock rate 400 hingga 1066 MHz; dan
modul DDR3 ditransfer pada clock rate 800 hingga 1600 MHz. Dalam praktiknya, tingkat
yang agak lebih kecil tercapai.
Lampiran K memberikan lebih banyak detail tentang teknologi DDR.

Cache DRAM
Cache DRAM (CDRAM), yang dikembangkan oleh Mitsubishi [HIDA90, ZHAN01],
mengintegrasikan cache SRAM kecil (16 Kb) ke chip DRAM generik.
SRAM pada CDRAM dapat digunakan dalam dua cara. Pertama, dapat digunakan
sebagai cache sejati, yang terdiri dari sejumlah garis 64-bit . Mode cache CDRAM efektif
untuk akses acak biasa ke memori.
SRAM pada CDRAM juga dapat digunakan sebagai buffer untuk mendukung akses
serial blok data. Misalnya, untuk menyegarkan layar yang dipetakan sedikit, CDRAM dapat
melakukan prefetch data dari DRAM ke buffer SRAM. Akses berikutnya ke chip
menghasilkan akses hanya ke SRAM.

5.4 SITUS BACAAN DAN WEB YANG DIREKOMENDASIKAN


[PRIN97] menyediakan perawatan komprehensif terhadap teknologi memori semikonduktor,
termasuk SRAM, DRAM, dan kenangan flash. [SHAR97] mencakup materi yang sama, dengan lebih
menekankan pada masalah pengujian dan keandalan. [SHAR03] dan [PRIN02] fokus pada arsitektur
DRAM dan SRAM canggih. Untuk melihat secara mendalam DRAM, lihat [JACO08] dan
[KEET01]. [CUPP01] memberikan perbandingan kinerja yang menarik dari berbagai skema DRAM.
[BEZ03] adalah pengantar komprehensif untuk teknologi memori flash.
Penjelasan yang baik tentang kode koreksi kesalahan terkandung dalam [MCEL85]. Untuk
studi yang lebih dalam, perawatan panjang buku yang berharga adalah [ADAM91] dan [BLAH83].
Perlakuan teoritis dan matematis yang dapat dibaca dari kode koreksi kesalahan adalah [ASH90].[
SHAR97] berisi survei kode yang baik yang digunakan dalam ingatan utama kontemporer.

ADAM91Adamek, J. Dasar-dasar coding. New York: Wiley, 1991.


ASH90Ash, R. Teori Informasi. New York: Dover, 1990.
BEZ03Bez, R. ;dkk. Pengantar Memori Flash. Prosiding IEEE, April 2003.
Blahut, R. Teori dan Praktek Kode Kontrol Kesalahan. Membaca, MA: Addison-Wesley, 1983.
CUPP01 Cuppu, V., dkk. "DRAM Kinerja Tinggi di Lingkungan Workstation." Transaksi IEEE
pada Komputer, November 2001.
JACO08 Yakub, B.; Ng, S.; dan Wang, D. Sistem Memori: Cache, DRAM, Disk. Boston: Morgan
Kaufmann, 2008.
Keet01 Keeth, B., dan Baker, R. Desain Sirkuit DRAM: Tutorial. Piscataway, NJ: IEEE Press,
2001.
28 BAB 5 / MEMORI INTERNAL

MCEL85 McEliece, R. "Keandalan Kenangan Komputer." Ilmiah Amerika ,


Januari 1985.
PRIN97 Pangeran, Kenangan Semikonduktor.Baru York: Wiley, 1997.
B.
PRIN02 Pangeran, Kenangan yang Muncul: Teknologi dan Tren.Norwell, MA: Kluwer,
2002.
B.
SHAR97 Sharma, A.Kenangan Semikonduktor: Teknologi, Pengujian, dan Keandalan.
Baru
York: IEEE Press, 1997.
SHAR03 Sharma, A.Kenangan Semikonduktor Canggih: Arsitektur, Desain, dan
Aplikasi. New York: IEEE Press, 2003.

Situs Web yang direkomendasikan


:
• Panduan RAM: Ikhtisar yang baik tentang teknologi RAM ditambah sejumlah tautan yang
berguna
• RDRAM: Situs lain yang berguna untuk informasi RDRAM

5.5 ISTILAH UTAMA, PERTANYAAN ULASAN , DAN


MASALAH

Syarat Utama
cache DRAM (CDRAM) RAM kegagalan keras koreksi kesalahan tunggal,
dinamis (DRAM) nonvolatile memori deteksi kesalahan ganda
ROM yang dapat diprogram programmable ROM Kode (SEC-DED)
secara elektrik (EEPROM) (PROM) kesalahan lunak
ROM yang dapat diprogram DRAM RamBus (RDRAM) RAM statis (SRAM)
dapat disejajai read-mostly memori read-only DRAM sinkron
(EPROM) memory (ROM) memori (SDRAM)
kode koreksi kesalahan (ECC) semikonduktor memori volatil
koreksi kesalahan memori kode koreksi kesalahan tunggal sindrom
flash kode Hamming (SEC)
Tinjau Pertanyaan
5.1Apa sifat kunci dari memori semikonduktor?
5.2Apa dua indera di mana istilah memori akses acak digunakan?
5.3Apa perbedaan antara DRAM dan SRAM dalam hal aplikasi?
5.4 Apa perbedaan antara DRAM dan SRAM dalam hal karakteristik seperti kecepatan, ukuran,
dan biaya?
5.5 Menjelaskan mengapa satu jenis RAM dianggap analog dan yang lainnya digital.
5.6Apa beberapa aplikasi untuk ROM?
5.7Apa perbedaan antara EPROM, EEPROM, dan memori flash?
5.8 Menjelaskan fungsi setiap pin pada Gambar 5.4b.
29
5.5 / ISTILAH UTAMA, PERTANYAAN ULASAN , DAN
MASALAH

5.9Apa itu sedikit paritas?


5.10Bagaimana sindrom untuk kode Hamming ditafsirkan?
5.11Bagaimana SDRAM berbeda dari DRAM biasa?

Urusan
5.1 Sarankan alasan mengapa RAMs secara tradisional telah diatur hanya sebagai 1 bit per chip
sedangkan ROM biasanya diatur dengan beberapa bit per chip.
5.2 Pertimbangkan RAM dinamis yang harus diberi siklus refresh 64 kali per ms. Setiap operasi
refresh membutuhkan 150 ns; siklus memori membutuhkan 250 ns. Berapa persentase dari
total waktu operasi memori yang harus diberikan untuk penyegaran?
5.3 Gambar 5.16 menunjukkan diagram waktu yang disederhanakan untuk operasi pembacaan
DRAM di atas bus. Waktu akses dianggap berlangsung dari t1 ke t2. Lalu ada waktu
pengisian ulang, yang berlangsung dari t2 hingga t3, di mana chip DRAM harus diisi ulang
sebelum prosesor dapat mengaksesnya lagi.
a. Asumsikan bahwa waktu akses adalah 60 ns dan waktu pengisian ulang adalah 40 ns.
Berapa waktu siklus memori? Berapa kecepatan data maksimum dram ini dapat
mempertahankan, dengan asumsi output 1-bit?
b. Membangun sistem memori selebar 32-bit menggunakan chip ini menghasilkan
kecepatan transfer data?
5.4 Gambar 5.6 menunjukkan cara membangun modul chip yang dapat menyimpan 1 MByte
berdasarkan sekelompok empat chip 256-Kbyte. Katakanlah modul chip ini dikemas
sebagai chip 1-Mbyte tunggal, di mana ukuran kata adalah 1 byte. Berikan diagram chip
tingkat tinggi tentang cara membangun memori komputer 8-Mbyte menggunakan delapan
chip 1-Mbyte. Pastikan untuk menampilkan baris alamat dalam diagram Anda dan untuk
apa garis alamat digunakan.
5.5 Pada sistem Intel 8086-based yang khas, terhubung melalui bus sistem ke memori DRAM,
untuk operasi baca, RAS diaktifkan oleh tepi trailing sinyal Address Enable (Gambar 3.19).
Namun, karena propagasi dan penundaan lainnya, RAS tidak aktif hingga 50 ns setelah
Address Enable kembali ke titik terendah. Asumsikan yang terakhir terjadi di tengah paruh
kedua T1 negara (agak lebih awal dari pada Gambar 3.19). Data dibaca oleh prosesor pada
akhir T3. Namun, untuk presentasi tepat waktu ke prosesor, data harus disediakan 60 ns
lebih awal oleh memori. Interval ini menyumbang
30 BAB 5 / MEMORI INTERNAL
Alamat
Alamat baris Alamat kolom
Baris

RAS

CAS

R/W

Data
Data keluar valid
Baris
t1 t2 t3

Gambar 5.16Simplified DRAM Read Timing


penundaan propagasi di sepanjang jalur data (dari memori ke prosesor) dan data prosesor
menahan persyaratan waktu. Asumsikan clocking rate 10 MHz.
a. Sebe
A3 1 16 Vcc Input Output
r apa
Mode Operasi
CS 2 15 A2 cepat
CS R/W Dn On
R/W 3 Signetics 14 A1
7489 L L L L
D3 4 13 A0 Menulis H H
L L
O3 5 12 D0
Membaca L H X Data
D2 6 16 4 11 O0
Menghambat H L L H
O2 7 SRAM 10 D1
penulisan H L H L
GND 8 9 O1
Simpan -
nonaktifkan H H X H
output
(waktu akses) yang harus DRAMs jika
tidak ada status tunggu yang harus dimasukkan?
b. Berapa banyak status tunggu yang harus kita masukkan per operasi pembacaan memori
jika waktu akses DRAMs adalah 150 ns?
5.6 Memori komputer mikro tertentu dibangun dari 64K * 1 DRAMs.Menurut lembar data, array
sel DRAM diatur menjadi 256 baris. Setiap baris harus disegarkan setidaknya sekali setiap 4
ms. Misalkan kita menyegarkan memori secara periodik.
a. Berapa periode waktu antara permintaan penyegaran berturut-turut?
b. Berapa lama penghitung alamat refresh yang kita butuhkan?

H tinggi tingkat tegangan


L tingkat tegangan rendah
X tidak peduli

(b) Tabel kebenaran


31
A0

A1

A2

A3

CS
n m l k j s h g f e d c b s
a e
R/W y b
a u
D3
a
D2 h

D1

D0 0 1 0 1 0 1 0 1 0 1 0 1 0 1

(c) Kereta pulsa

Gambar 5.17 Signetics 7489 SRAM


5.5 / ISTILAH UTAMA, PERTANYAAN ULASAN , DAN MASALAH

5.7 Gambar 5.17 menunjukkan salah satu SRAMs awal, chip 16 * 4 Signetics 7489, yang menyimpan 16
kata 4-bit.

a. Cantumkan mode pengoperasian chip untuk setiap pulsa input CS yang ditunjukkan pada Gambar
5.17c.
b. Cantumkan isi memori lokasi kata 0 hingga 6 setelah pulsa n.
c. Bagaimana keadaan data output mengarah untuk pulsa input h melalui m?
5.8 Desain memori 16-bit dari total kapasitas 8192 bit menggunakan chip SRAM ukuran 64 * 1 bit.
Berikan konfigurasi array chip pada papan memori yang menunjukkan semua sinyal input dan output
yang diperlukan untuk menetapkan memori ini ke ruang alamat terendah. Desain harus
memungkinkan akses byte dan kata 16-bit.
5.9 Unit ukuran umum untuk tingkat kegagalan komponen elektronik adalah Kegagalan unIT (FIT),
dinyatakan sebagai tingkat kegagalan per miliar jam perangkat. Ukuran lain yang terkenal tetapi
kurang digunakan adalah waktu rata-rata antara kegagalan (MTBF), yang merupakan waktu rata-
rata operasi komponen tertentu sampai gagal. Pertimbangkan memori 1 MB dari mikroprosesor 16-bit
dengan 256K * 1 DRAMs. Hitung MTBF-nya dengan asumsi 2000 FITS untuk setiap DRAM.
5.10 Untuk kode Hamming yang ditunjukkan pada Gambar 5.10, tunjukkan apa yang terjadi ketika bit
pemeriksaan daripada bit data salah?
5.11 Misalkan kata data 8-bit yang disimpan dalam memori 11000010. Dengan menggunakan algoritma
Hamming, tentukan bit cek apa yang akan disimpan dalam memori dengan kata data. Tunjukkan
bagaimana Anda mendapatkan jawaban Anda.
5.12 Untuk kata 8-bit 00111001, bit cek yang disimpan dengannya adalah 0111. Misalkan ketika kata
dibaca dari memori, bit cek dihitung menjadi 1101.Apa kata data yang dibaca dari memori?
5.13 Berapa banyak bit pemeriksaan yang diperlukan jika kode koreksi kesalahan Hamming digunakan
untuk mendeteksi kesalahan bit tunggal dalam kata data 1024-bit?
5.14 Kembangkan kode SEC untuk kata data 16-bit. Buat kode untuk kata data 0101000000111001.
Tampilkan bahwa kode akan mengidentifikasi kesalahan dengan benar di data bit 5.

Anda mungkin juga menyukai