Mengapa orang masih menggunakan EEPROM normal, bukan flash?

34

Apakah ada alasan mengapa orang masih menggunakan (dan menerapkan dalam sistem baru) EEPROMs normal daripada memori flash, saat ini?

Dari wikipedia memori Flash :

Memori flash dikembangkan dari EEPROM (memori hanya-baca yang dapat diprogram yang dapat dihapus secara listrik).

Apakah akan ada kerugian (konsumsi daya, ruang, kecepatan, dll.) Dalam menggunakan flash daripada EEPROM normal?


sumber
Saya pikir Anda mungkin bingung antara EPROM (hanya dapat dihapus di bawah UV, kebanyakan sudah usang) dan EEPROM (dapat dihapus secara elektrik).
pjc50
@ pjc50 Saya tidak - saya mengutip bagian wiki yang salah, perbaiki sekarang - terima kasih :)
2
Flash dihapus dalam potongan besar, sedangkan EEPROM dapat dihapus per byte.
jippie
2
Anda tidak akan pernah tahu mereka sama dengan membaca lembar data PIC ... mereka bahkan memiliki ketahanan yang berbeda. Tapi saya rasa itu mungkin pemasaran. Lagipula, mereka juga punya "Enhanced Flash". BTW EEPROM hilang pada PIC 32, dan menulis halaman flash minimum adalah 4k byte.
gbarry
2
@barry: Mereka tidak sama. Flash adalah EEPROM, tetapi tidak semua EEPROM adalah flash. Ingat apa artinya EEPROM, yang merupakan memori hanya-baca yang dapat diprogram yang dapat dihapus secara listrik .
Olin Lathrop

Jawaban:

26

Untuk menjadi luar biasa, memori FLASH hanyalah bentuk EEPROM: Ada aspek pemasaran / branding di sini. Biasanya, perbedaan yang digunakan saat ini adalah bahwa EEPROMS adalah byte tunggal (atau kata penyimpanan ) yang dapat dihapus / ditulis ulang, sedangkan FLASH berbasis blok untuk operasi hapus / tulis.

Relevan dengan pertanyaan:

  • EEPROM terus menjadi populer karena peringkat siklus penghapusan / tulis maksimum menjadi urutan besarnya atau dua lebih baik daripada FLASH
  • Karena investasi dalam desain biasanya telah diamortisasi dari waktu ke waktu, seperti halnya dengan teknologi dewasa, biaya produksi dan pengujian berkurang dibandingkan dengan teknologi yang lebih baru.
Anindo Ghosh
sumber
2
Semua orang berbicara tentang menghapus byte tunggal atau berbasis blok tapi apa teori di balik itu ?? saya dapat menghapus sejumlah byte untuk memori flash juga !!!
The Beast
1
@ Frankenstein bagaimana itu dilakukan?
abdullah kahraman
19

Jumlah siklus tulis yang dapat ditangani sebagian besar EEPROM umumnya jauh melebihi jumlah siklus tulis yang dapat ditangani sebagian besar memori flash.

EEPROMS umumnya dapat menangani ~ 100.000-1.000.000 menulis per sel.
Flash umumnya diberi peringkat hingga ~ 1.000-100.000 tulisan (sangat bervariasi tergantung pada jenis flash).

Keuntungan lain yang dimiliki EEPROM dibandingkan flash adalah bahwa flash umumnya harus dihapus dalam blok, jadi jika pola penulisan Anda melibatkan menulis byte-tunggal berurutan, Anda akan menggunakan lebih banyak siklus tulis pada memori flash maka Anda akan menggunakan EEPROM yang setara, seperti EEPROM memori pada umumnya dapat dihapus pada basis per-byte, daripada menggunakan flash siklus per-blok.

Pada dasarnya, flash umumnya dihapus dalam blok ~ 64-512 kilobyte. Oleh karena itu, untuk setiap penulisan di mana saja di dalam blok itu, pengontrol harus menghapus seluruh blok, menggunakan siklus tulis untuk seluruh blok. Anda dapat melihat, jika Anda melakukan penulisan byte tunggal secara berurutan ke setiap alamat dalam sebuah blok, Anda akan berakhir dengan kinerja di mana saja antara 64K hingga 512K menulis ke seluruh blok, yang dapat dengan mudah menggunakan seluruh daya tahan tulis dari flash.

Dengan demikian, EEPROMs umumnya digunakan dalam situasi di mana prosesor lokal kecil tidak memiliki kemampuan untuk menulis buffer ke setiap halaman flash.


Banyak dari ini menjadi kurang benar seiring kemajuan teknologi flash. Ada IC memori flash yang mencakup fasilitas untuk buffer-tulis lokal, serta daya tahan tulis pada memori flash meningkat secara dramatis.

Connor Wolf
sumber
Ukuran blok penghapus dan blok tulis biasanya tidak sama. Juga untuk flash single-bit-per-sel yang lebih tua, orang dapat dengan andal menimpa blok setidaknya sekali selama penulisan tidak memerlukan perubahan nilai bit kembali ke keadaan terhapus. Misalnya, jika 1 adalah status terhapus, dengan blok 16-bit seseorang dapat menulis 0bxxxxxxxx11111111 dan kemudian menulis 0bxxxxxxxxyyyyyyyyy (atau bahkan 0b101010101111111111 dan kemudian 0b00000000xxxxxxxx).
Paul A. Clayton
@ PaulA.Clayton - Poin bagus.
Connor Wolf
@ PaulA.Clayton: Satu hal yang saya harapkan akan didokumentasikan oleh vendor flash adalah apakah seseorang dapat secara sah menghapus sebagian besar blok flash yang sudah ditulis tanpa harus menghapusnya terlebih dahulu. Mampu membatalkan halaman secara langsung tanpa harus melacak fakta bahwa halaman itu tidak valid akan sangat berguna.
supercat