Phân biệt khái niệm RAM, ROM, EEPROM, FLASH

Trong hệ thống nhúng, ROM, RAM, EEPROM và FLASH, tất cả chúng đều là bộ nhớ nhưng khác nhau theo cách chúng hoạt động. Sự khác biệt chính của các bộ nhớ trên là cách mà chúng tương tác với dữ liệu và mục đích sử dụng khác nhau.

🔹 RAM: (Random Access Memory) Bộ nhớ truy cập ngẫu nhiên. Chứa dữ liệu chương trình tạm thời và sẽ bị mất khi không được cấp nguồn điện, tốc độ truy cập cao, có thể đọc và ghi cùng một lúc, khi nguồn điện bị mất toàn bộ dữ liệu ghi trên bộ nhớ RAM sẽ được giải phóng. RAM có khả năng truy xuất dữ liệu tại bất kỳ vị trí nào trong bộ nhớ của nó dựa theo địa chỉ ô nhớ.

🔹 ROM: (Read-Only Memory) Bộ nhớ chỉ đọc. Dữ liệu ghi trên ROM không bị mất đi ngay cả khi nguồn cấp bị mất, chẳng hạn như chương trình ghi trên chip BIOS được sử dụng bởi máy tính. Tốc độ truy cập thấp (so với RAM) và nó cũng chỉ có thể được ghi một lần duy nhất bởi nhà sản xuất khi phát hành mà không có khả năng ghi lại lần nữa. Ví dụ điển hình như các băng đĩa CD.

🔹 EEPROM: (Electrically Erasable Programmable Read-Only Memory) Việc phát triển EEPROM là một cuộc cách mạng trong lĩnh vực nhúng, thường được sử dụng để lưu trữ các tham số cấu hình hệ thống cho ứng dụng nhúng. Bạn có thể xóa toàn bộ bộ nhớ bằng điện tử sau đó ngay lập tức ghi lại nội dung mới. Để ghi lại dữ liệu vào EEPROM, chúng ta bắt buộc cần xóa dữ liệu trước đó rồi mới ghi dẫn đến việc làm cho quá trình ghi xóa ở EEPROM sẽ chậm hơn so với RAM.

🔹 FLASH: là một biến thể của EEPROM và hiện tại đang rất phổ biến, giống như EEPROM nhưng chi phí sản xuất thấp hơn nhiều, FLASH có thể đọc, xóa và ghi, lưu trữ dữ liệu mà không bị mất ngay cả khi ngắt nguồn điện.Trong một thời gian dài của quá trình phát triển, các hệ thống nhúng đã sử dụng ROM làm thiết bị lưu trữ của họ. Tuy nhiên, FLASH đã thay thế hoàn toàn vị trí ROM trong các hệ thống nhúng trong vòng vài năm gần đây và được sử dụng để lưu trữ Bootloader và các hệ điều hành hoặc chương trình Code.

Tuy vậy ta vẫn phải đặt câu hỏi Tại sao FLASH được phát triển từ EEPROM nhưng FLASH không thể thay thế hoàn toàn EEPROM?

🔹 EEPROM và FLASH đều có thể xóa, ghi và đọc phục vụ cho lập trình nhưng EEPROM cho phép xóa tới đơn vị byte còn FLASHthì phải xóa theo từng khối Sector hoặc Page, việc phân thành từng khối và hạn chế xóa giúp cho việc lập trình được gọn và chức năng các khối rõ ràng hơn. 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ị EEPROMsẽ 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).

Nguồn: DevZone

1 bình luận cho “Phân biệt khái niệm RAM, ROM, EEPROM, FLASH

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *