Câu trả lời:
Có rất nhiều sự đánh đổi với nó.
Wikipedia cũng:
Mặc dù có các bóng bán dẫn bổ sung, việc giảm dây nối đất và đường bit cho phép bố trí dày hơn và dung lượng lưu trữ lớn hơn trên mỗi chip. Ngoài ra, flash NAND thường được phép chứa một số lỗi nhất định (flash flash, như được sử dụng cho ROM BIOS, dự kiến sẽ không có lỗi). Các nhà sản xuất cố gắng tối đa hóa dung lượng lưu trữ có thể sử dụng bằng cách thu nhỏ kích thước của bóng bán dẫn xuống dưới kích thước mà chúng có thể được tạo ra một cách đáng tin cậy, đến kích thước mà việc giảm thêm sẽ làm tăng số lượng lỗi nhanh hơn so với tăng tổng lưu trữ có sẵn.
Vì vậy, đèn flash NOR có thể xử lý dễ dàng hơn, nhưng thậm chí không gần như dày đặc.
Nếu bạn nhìn vào một PDF so sánh khá tốt.
NOR có công suất dự phòng thấp hơn, dễ dàng thực thi mã và có tốc độ đọc cao.
NAND có công suất hoạt động thấp hơn nhiều (ghi bit nhanh hơn và chi phí thấp hơn), tốc độ ghi cao hơn (rất nhiều), dung lượng cao hơn nhiều, chi phí cho mỗi bit thấp hơn nhiều và rất dễ sử dụng lưu trữ tệp. do tốc độ đọc thấp hơn khi sử dụng nó để thực thi mã, bạn thực sự cần phải ghost nó để ram.
Để trích dẫn một phần nhỏ với một bảng tuyệt vời trên nó ...
NAND flash rẻ hơn, vì vậy bạn muốn sử dụng nó nếu có thể. Hạn chế là nó không đáng tin cậy. Flash NAND nhanh hơn ở hầu hết các hoạt động, với ngoại lệ đáng chú ý là các lần đọc truy cập ngẫu nhiên nhỏ. Nếu bạn muốn đọc một vài byte từ một địa chỉ ngẫu nhiên trong bộ nhớ, thì NOR nhanh hơn. Đối với việc đọc bộ nhớ lớn, NAND thực hiện khá tốt và thực sự đánh bại NOR cho các khối đủ lớn.
Hầu hết các hệ điều hành nhúng bao gồm mã để sửa lỗi trong NAND Flash. Ngoài ra còn có vi điều khiển với sửa lỗi phần cứng. Vấn đề thực sự xảy ra vào lúc khởi động-- bộ tải khởi động cấp đầu tiên không có mã sửa lỗi và chúng chưa cấu hình bộ điều khiển bộ nhớ để chạy ECC phần cứng. Đó là một chút vấn đề trứng gà - bạn không thể tải mã ECC mà không gặp lỗi vì bạn chưa tải mã ECC.
Để giải quyết vấn đề này, một số nhà sản xuất bộ nhớ sẽ chỉ định một vùng nhất định của chip được đảm bảo không có lỗi (4 kB đầu tiên, hoặc đại loại như thế). Bạn đặt một bộ tải khởi động với phần mềm ECC ở đó (như U-boot ), đọc nó ra mà không có lỗi, và sau đó sử dụng nó để đọc nhân hệ điều hành của bạn, sửa lỗi khi bạn đi. Bạn cũng có thể lưu trữ bộ tải khởi động trong flash nối tiếp và chỉ cần sử dụng flash NAND cho những thứ lớn như nhân hệ điều hành hoặc hệ thống tập tin.
Tôi đã thấy ghi chú ứng dụng Atmel này hữu ích: http://www.atmel.com/dyn/resource/prod_document/doc6255.pdf
NOR cho phép truy cập ngẫu nhiên, nhưng NAND thì không (chỉ truy cập trang.)
Từ Wikipedia :
Flash NOR và NAND lấy tên của chúng từ cấu trúc của các kết nối giữa các ô nhớ. Trong flash flash, các ô được kết nối song song với các bitline, cho phép các ô được đọc và lập trình riêng lẻ. Kết nối song song của các tế bào giống như kết nối song song của các bóng bán dẫn trong cổng CMOS NOR. Trong flash NAND, các ô được kết nối thành chuỗi, giống như cổng NAND. Các kết nối loạt tiêu thụ ít không gian hơn các kết nối song song, giảm chi phí flash NAND. Bản thân nó không ngăn các tế bào NAND được đọc và lập trình riêng lẻ.