Sự khác biệt giữa bộ nhớ Flash và EEPROM là gì?


Câu trả lời:


68

Các thiết bị ROM đầu tiên phải có thông tin được đặt trong chúng thông qua một số phương tiện cơ học, quang khắc hoặc phương tiện khác (trước các mạch tích hợp, người ta thường sử dụng lưới trong đó điốt có thể được cài đặt hoặc bỏ qua một cách chọn lọc). Cải tiến lớn đầu tiên là "Fuse-PROM" - một con chip chứa một mạng lưới các điốt được hợp nhất và các bóng bán dẫn ổ đĩa đủ mạnh để chọn một hàng và buộc trạng thái đầu ra có thể thổi các cầu chì vào bất kỳ điốt nào một người không muốn. Mặc dù các chip như vậy có thể ghi được bằng điện, nhưng hầu hết các thiết bị mà chúng sẽ được sử dụng không có mạch ổ đĩa mạnh cần thiết để ghi vào chúng. Thay vào đó, chúng sẽ được viết bằng một thiết bị gọi là "lập trình viên", và sau đó được cài đặt trong thiết bị cần thiết để có thể đọc chúng.

Cải tiến tiếp theo là một thiết bị bộ nhớ sạc điện, cho phép sạc điện được cấy điện nhưng không được gỡ bỏ. Nếu các thiết bị như vậy được đóng gói trong các gói trong suốt UV (EPROM), chúng có thể bị xóa khi tiếp xúc với tia cực tím khoảng 5-30 phút. Điều này cho phép sử dụng lại các thiết bị có nội dung được tìm thấy không có giá trị (ví dụ: các phiên bản phần mềm bị lỗi hoặc chưa hoàn thành). Đặt các chip tương tự trong một gói mờ cho phép chúng được bán rẻ hơn cho các ứng dụng của người dùng cuối, nơi mà không ai có thể muốn xóa và sử dụng lại chúng (OTPROM). Một cải tiến thành công giúp có thể xóa các thiết bị bằng điện mà không cần đèn UV (EEPROM sớm).

Các thiết bị EEPROM sớm chỉ có thể bị xóa hàng loạt và việc lập trình yêu cầu các điều kiện rất khác so với các thiết bị hoạt động bình thường; do đó, như với các thiết bị PROM / EPROM, chúng thường được sử dụng trong các mạch có thể đọc nhưng không thể viết chúng. Những cải tiến sau này đối với EEPROM cho phép xóa các vùng nhỏ hơn, nếu không phải là từng byte riêng lẻ và cũng cho phép chúng được ghi bởi cùng một mạch sử dụng chúng. Tuy nhiên, tên không thay đổi.

Khi một công nghệ có tên "Flash ROM" xuất hiện, việc các thiết bị EEPROM cho phép các byte riêng lẻ bị xóa và ghi lại trong một mạch ứng dụng là điều khá bình thường. Flash ROM về mặt nào đó là một bước lùi về mặt chức năng vì việc xóa chỉ có thể diễn ra trong các khối lớn. Tuy nhiên, việc hạn chế tẩy xóa thành các khối lớn giúp lưu trữ thông tin gọn hơn nhiều so với EEPROM. Hơn nữa, nhiều thiết bị flash có chu kỳ ghi nhanh hơn nhưng chu kỳ xóa chậm hơn so với điển hình của các thiết bị EEPROM (nhiều thiết bị EEPROM sẽ mất 1-10ms để ghi một byte và 5-50ms để xóa; các thiết bị flash thường yêu cầu ít hơn 100us viết, nhưng một số yêu cầu hàng trăm mili giây để xóa).

Tôi không biết rằng có một đường phân chia rõ ràng giữa flash và EEPROM, vì một số thiết bị tự gọi là "flash" có thể bị xóa trên cơ sở mỗi byte. Tuy nhiên, xu hướng ngày nay dường như là sử dụng thuật ngữ "EEPROM" cho các thiết bị có khả năng xóa từng byte và "flash" cho các thiết bị chỉ hỗ trợ xóa khối lớn.


Ý bạn là gì khi "Thông tin lưu trữ flash gọn hơn nhiều so với EEPROM" và tại sao các chu kỳ xóa trong bộ nhớ flash có thể lớn hơn chu kỳ ghi?
Quái thú

1
@Frankenstein: Các thiết kế mạch EEPROM thường yêu cầu dành không gian để xóa mạch trong cùng các lớp của chip như lập trình và đọc mạch. Mặc dù có một loạt các thiết kế mạch flash, nhưng chúng thường tránh yêu cầu như vậy.
supercat

cảm ơn +1 nhưng tại sao điều này lại quan trọng có phải vì lý do duy nhất này mà bộ nhớ FLASH nhanh hơn EEPROM
The Beast

1
@Frankenstein: Chương trình EEPROM và các chu trình xóa diễn ra bằng các phương tiện tương tự nhau. Hầu hết các thiết bị flash sử dụng các cơ chế hoàn toàn khác nhau để lập trình và tẩy xóa. Ít nhất một thiết bị tôi làm việc ở mức rất thấp là vi điều khiển TI 320F206, khiến phần mềm người dùng chịu trách nhiệm kiểm soát thời gian lập trình và xóa các chu kỳ. Trên con chip đó, người ta có thể tưởng tượng bộ nhớ bao gồm một loạt các xô có van có thể thoát nước một cách chọn lọc, ngồi dưới một loạt các vòi phun nước trên cao có thể lấp đầy chúng. Những điều kỳ lạ có thể xảy ra nếu xô ...
supercat

1
... đầy quá, vì vậy để xóa mảng, người ta phải tháo hết xô, bật vòi phun nước một lúc, kiểm tra xem tất cả các thùng đã đầy chưa, bật vòi phun nước thêm một chút nếu họ không, sau đó kiểm tra lại, v.v. Nếu các vòi phun nước được bật quá lâu, sẽ cần phải thực hiện một thao tác đặc biệt để sửa chữa mọi thứ [Tôi không nhớ chính xác cách thức hoạt động của nó]. Tất cả phức tạp hơn đáng kể so với EEPROM có thể bị xóa trực tiếp.
supercat

29

Spoiler: EEPROM thực tế là Flash.

Như câu trả lời của supercat đã chỉ ra một cách xuất sắc, EEPROM là một sự tiến hóa của các EPROM cũ có thể xóa được UV (EEPROM là "EE" là viết tắt của "Có thể xóa bằng điện"). Tuy nhiên, mặc dù nó được một sự cải tiến để bạn thân cũ của nó, cách tổ chức thông tin EEPROM của ngày nay là chính xác cùng của bộ nhớ flash.



Sự khác biệt chính CHỈ giữa hai là logic đọc / ghi / xóa.


  • NAND Flash (flash thông thường):

    Chỉ có thể bị xóa trong các trang aka. khối byte. Bạn có thể đọc và ghi (không ghi tên) các byte đơn, nhưng việc xóa yêu cầu xóa sạch rất nhiều byte khác.

    Trong bộ điều khiển vi mô, nó thường được sử dụng để lưu trữ phần sụn. Một số triển khai hỗ trợ xử lý flash từ bên trong phần sụn, trong trường hợp đó bạn có thể sử dụng đèn flash đó để lưu giữ thông tin miễn là bạn không gây rối với các trang đã sử dụng (nếu không bạn sẽ xóa phần sụn của mình).

  • Flash Flash (còn gọi là EEPROM):

    Có thể đọc, viết và xóa các byte đơn. Logic điều khiển của nó được trình bày theo cách sao cho tất cả các byte có thể truy cập riêng lẻ. Mặc dù chậm hơn đèn flash thông thường, tính năng này mang lại lợi ích cho các thiết bị điện tử nhỏ hơn / cũ hơn. Chẳng hạn, TV và màn hình CRT cũ hơn đã sử dụng EEPROM để giữ cấu hình người dùng như sáng, tương phản, v.v.

    Trong bộ điều khiển vi mô, đó là những gì bạn thường sử dụng để giữ cấu hình, trạng thái hoặc dữ liệu hiệu chuẩn. Nó tốt hơn flash vì điều đó là để xóa một byte đơn bạn không cần phải nhớ (RAM) nội dung của trang để viết lại nó.



Sự thật thú vị
Có một quan niệm sai lầm phổ biến rằng NOR Flash sử dụng cổng NOR trong khi NAND Flash sử dụng cổng NAND (và thực tế nó có vẻ hiển nhiên). Tuy nhiên điều đó không đúng. Lý do cho việc đặt tên là sự giống nhau của logic điều khiển của từng loại bộ nhớ với các ký hiệu sơ đồ cổng NAND và NOR.


22

Flash là một loại EEPROM (Bộ nhớ chỉ đọc có thể lập trình có thể xóa bằng điện). "Flash" là một thuật ngữ tiếp thị hơn là một công nghệ cụ thể. Tuy nhiên, các thuật ngữ này đã được hội tụ có nghĩa là một loại EEPROM được tối ưu hóa cho kích thước và mật độ lớn, thường là chi phí của các khối xóa và ghi lớn và độ bền thấp hơn.


8
Tại sao họ gọi nó là bộ nhớ chỉ đọc, không phải là loại ngu ngốc nếu nó được đọc và đúng?
skyler

4
@skyler: Đó là một phần lịch sử, và một phần nó có ý nghĩa. ROM ban đầu (bộ nhớ chỉ đọc) được lập trình mặt nạ, có nghĩa là nó được thực hiện như một bước trong xây dựng chip. Sau đó, có các liên kết có thể sử dụng được đặt P trong PROM. EEPROM ngày nay vẫn còn đọc - chủ yếu là bộ nhớ. Quá trình viết phức tạp hơn và chậm hơn rất nhiều so với việc đọc, và trong trường hợp này làm hao mòn chip. Những loại ô nhớ cổng nổi này chỉ có thể bị xóa và ghi rất nhiều lần trước khi chúng bị lỗi vật lý.
Olin Lathrop

Bạn có thể viết một ổ cứng từ tính hoặc bóng bán dẫn cổng nổi nhiều lần hơn không?
skyler

@skyler: Nếu một người viết một vùng trên ổ cứng càng nhanh càng tốt, thì người ta có thể viết nó hơn một tỷ lần mỗi năm, trong nhiều năm, mà không bị hao mòn. Các bóng bán dẫn cổng nổi không đến gần mà không bị mòn. Với mức độ hao mòn, lượng dữ liệu có thể được ghi ở tốc độ tối đa cho thiết bị flash trước khi nó bị hao mòn sẽ tương đương với ổ cứng (một số thiết bị flash có thể tốt hơn; một số thiết bị tệ hơn).
supercat

2
@skyler: Nhiều chip EEPROM sớm có thể được kết nối trực tiếp với bus vi xử lý để truy cập chỉ đọc, nhưng việc ghi vào chúng sẽ yêu cầu các điều kiện mà bus vi xử lý thông thường không thể tạo ra. Do đó, chúng thường được viết bằng một thiết bị gọi là "lập trình viên", sau đó cắm vào thiết bị đọc dữ liệu từ chúng.
supercat

4

Bộ nhớ flash là một biến thể của EE-PROM đang trở nên phổ biến. Sự khác biệt lớn giữa bộ nhớ flash và EE-PROM là trong quy trình xóa .EE-PROM có thể bị xóa ở cấp độ đăng ký, nhưng phải xóa bộ nhớ flash trong toàn bộ hoặc ở cấp ngành.


Làm thế nào mà câu trả lời của bạn cải thiện so với câu trả lời đã được chấp nhận? Tôi không thấy bạn thêm bất kỳ thông tin hay quan điểm nào vào những gì đã được nói.
Joe Hass

2

Lưu trữ "Flash" là thuật ngữ bắt tất cả để lưu trữ bên trong chip bộ nhớ (Bộ nhớ không biến đổi), thay vì các đĩa quay như đĩa mềm, CD, DVD, Đĩa cứng, v.v.

NORNAND là các chip bộ nhớ flash ban đầu và được Fujio Masuoka phát minh ra khi làm việc cho Toshiba vào khoảng năm 1980. "NOR" và "NAND" được sử dụng trong hầu hết các ổ USB.

Bộ lưu trữ flash cũng bao gồm cả EEP-ROM (bộ nhớ chỉ đọc có thể lập trình có thể xóa bằng điện) và NV-RAM (Bộ nhớ truy cập ngẫu nhiên không dễ bay hơi). EEP-ROM rẻ hơn và được sử dụng để lưu trữ trong hầu hết các thiết bị Hệ thống trên Chips và Android. NV-RAM đắt hơn và được sử dụng cho Ổ đĩa thể rắn và lưu trữ trong các thiết bị của Apple.

Các chip NV-RAM mới nhanh hơn nhiều so với EEP-ROM và các công nghệ Flash khác.

Để biết thêm thông tin, hãy xem: http://www.crifan.com/___flash_memory_nand_eeprom_nvram_and_others_zt/


Có phải MRAM , FeRAMPCRAM cũng bị cuốn theo thuật ngữ "bắt tất cả" không?
uhoh

2
DIMM sẽ là DIMM bất kể RAM động hay RAM không biến động. MRAM, FeRAM và PCRAM được sử dụng làm ổ lưu trữ nằm trong thuật ngữ "Lưu trữ flash" bắt kịp
Neel

1
Cảm ơn! Kể từ khi tôi phát hiện ra rằng Ba Level Cell NAND FLASH có tám cấp độ chứ không phải ba tôi đã trở nên ý thức hơn (cảnh giác?) Của thuật ngữ.
uhoh
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.