Lưu giữ dữ liệu trên vi điều khiển


10

Chỉ cần đọc bảng dữ liệu của attiny13, nó nói rằng nó có thể giữ dữ liệu của mình trong 20 năm ở 85 độ C và 100 năm ở 25 độ C.

  • Đây có phải là bất kể việc đọc và ghi trên micro không, ví dụ như tôi tắt nó và giữ nó ở nhiệt độ không đổi 85 độ C trong 20 năm và nó sẽ mất dữ liệu?
  • Làm thế nào nó có thể "mất" dữ liệu của mình? Tôi không thấy khái niệm này.
  • Ngoài ra, đơn vị ppm (phần triệu là bao nhiêu) được đề cập ở trang 6 trong phần lưu giữ dữ liệu nhưng không hiểu nội dung của nó nói về điều gì. Tôi đã nhìn thấy nó thường xuyên khi nói về bộ dao động tinh thể nhưng không thể hiểu tại sao nó được sử dụng.

Trường hợp sử dụng của bạn là gì? Đối với hầu hết các ứng dụng, điều cần lấy từ trang đó là "Dữ liệu sẽ tồn tại lâu hơn thiết bị của bạn, đừng lo lắng về điều đó". Bạn đang làm việc trên một độ bền cao, an toàn quan trọng, hoặc sản phẩm độc đáo khác?
Kevin Vermeer

@Kevin Không có trường hợp nào cho câu hỏi này chỉ cần đọc nó trong biểu dữ liệu và tự hỏi ý nghĩa của câu nói này là gì khi tôi có một chút bối rối.
Trưởng khoa

2
@answerers: 1 ppm, tôi nên đọc nó như thế nào? 1 bộ điều khiển bị lỗi trên một triệu, hoặc 1 ô bit bị lỗi trên một triệu. Khả năng thứ nhất là an ủi, thứ hai ít như vậy.
Federico Russo

@Federico - câu hỏi hay. Tôi cập nhật câu trả lời của tôi.
stevenvh

1
Nó giữ một khoản phí .. khi bạn viết lại ô, nó sẽ giữ nó thêm 20 năm nữa @ 85d. Giống như sạc lại nó. Vì vậy, sau thời gian sạc bắt đầu thất bại và dữ liệu bắt đầu bị hỏng.
Piotr Kula

Câu trả lời:


18

Bộ nhớ flash, như EEPROM, lưu trữ thông tin của nó trong cái gọi là cổng nổi . Các cổng thông thường trên FET (MOS) có kết nối bên ngoài, qua đó FET được bật và tắt (đối với các MOSFET tích hợp, đây sẽ là kết nối lớp kim loại). Cổng nổi không có kết nối lớp pin hoặc kim loại này. Chúng được cách ly hoàn toàn trong SiO 2 phía trên kênh MOSFET và ở mức> 10 14 Ω cm SiO 2 là một trong những chất cách điện tốt nhất bạn có thể nhận được. 21014Ω2

nhập mô tả hình ảnh ở đây
nhập mô tả hình ảnh ở đây

Giống như MOSFE truyền thống, họ bật kênh khi họ mang điện tích. Nhưng làm thế nào họ được lập trình sau đó? Thông qua một hiệu ứng lượng tử được gọi là đường hầm được tạo ra bằng cách áp dụng một điện trường giữa kênh và cổng điều khiển. Do đó, công nghệ này được gọi là FLOTOX , viết tắt của "FLOating-gate Tunnel OXide", có thể so sánh với FAMOS ("Chất bán dẫn oxit kim loại phun nổi cổng") được sử dụng trong các EPROM cũ có thể xóa được UV.
(Tôi không thể giải thích chi tiết về đường hầm ở đây; hiệu ứng lượng tử thách thức mọi logic. Dù sao, nó phụ thuộc rất nhiều vào số liệu thống kê).

Câu hỏi đầu tiên của bạn thực sự là một câu hỏi đôi: 1) tôi có thể thực hiện đọc và ghi không giới hạn không và 2) nó có giữ được dữ liệu khi thiết bị không được sử dụng (thời hạn sử dụng) không?
Để bắt đầu với thứ nhất: không bạn không thể. Bạn có thể đọc nó không giới hạn số lần, nhưng chu kỳ viết bị giới hạn. Bảng dữ liệu cho biết 10 000 lần. Số lượng chu kỳ hạn chế là do các hạt mang điện tích còn lại trong cổng nổi sau khi bị xóa, số lượng cuối cùng trở nên quá lớn đến nỗi tế bào không thể bị xóa nữa.
Nó sẽ giữ lại dữ liệu của mình trong 20 năm ngay cả khi không có điện? Vâng, đó là những gì bảng dữ liệu nói. Tính toán MTTF (Thời gian trung bình để thất bại) (lại là một phương pháp thống kê) dự đoán ít hơn 1 phần triệu lỗi. Đó là ý nghĩa của ppm.

một lưu ý trên MTTF
MTTF có nghĩa là Thời gian thất bại trung bình , khác với MTBF (Thời gian trung bình giữa các lần thất bại). MTBF = MTTF + MTTR (Thời gian trung bình để sửa chữa). Có ý nghĩa.
Mọi người thường sử dụng thuật ngữ MTBF khi chúng thực sự có nghĩa là MTTF. Trong nhiều tình huống không có nhiều khác biệt, như khi MTTF là 10 năm và MTTR là 2 giờ. Nhưng các bộ vi điều khiển không thành công không được sửa chữa, chúng được thay thế, vì vậy cả MTTR và MTBF đều không có ý nghĩa gì ở đây.

Atmel báo giá lỗi 1ppm sau 100 năm. Rõ ràng là AVR đã không được sản xuất trong một thời gian dài, vậy làm thế nào để họ đến với con số đó? Có một sự hiểu lầm dai dẳng rằng đây chỉ đơn giản là một điều tuyến tính: 1 thiết bị bị lỗi sau 1000 000 giờ sẽ giống như 1 thiết bị bị lỗi trên 1000 giờ trong tổng số 1000 thiết bị. 1000 x 1000 = 1000 000, phải không? Đó không phải là cách nó hoạt động! Nó không tuyến tính. Bạn hoàn toàn có thể có lỗi sau 1 triệu giờ, và không có lỗi nào sau một nghìn, ngay cả với dân số một triệu! Tính toán MTTF tính đến tất cả các loại hiệu ứng có thể ảnh hưởng đến độ tin cậy của sản phẩm và gắn thời gian cho từng loại. Phương pháp thống kê sau đó được sử dụng để đi đến dự đoán khi sản phẩm cuối cùng sẽ thất bại. Xem thêm "

(Quên các lỗi Wikipedia trên MTBF. Nó sai.)

2

Câu hỏi của Federico nếu 1 ppm đề cập đến các thiết bị hoặc tế bào là hợp lý. Bảng dữ liệu không nói, nhưng tôi đoán đó là 1 ô dữ liệu bị lỗi trên một triệu. Tại sao? Nếu đó là thiết bị, bạn sẽ nhận được số liệu tồi tệ hơn cho các thiết bị có kích thước Flash lớn hơn và chúng giống nhau với giá 1k như với 16k. Ngoài ra, 100 năm là vô cùng dài. Tôi sẽ ngạc nhiên khi thấy 999 999 thiết bị trong số 1 triệu vẫn hoạt động.

hình ảnh đáng xấu hổ bị đánh cắp ở đây


1
Huh, và tôi nghĩ hiệu ứng lượng tử dựa vào ma thuật. Ai có thể nghĩ rằng số liệu thống kê có liên quan gì đến nó!?
Olin Lathrop

@Olin - Từ các lớp thống kê của tôi, nhiều mặt trăng trước đây, tôi thấy thống kê là một loại ma thuật xấu xa. Đó có thể là phép thuật mà bạn muốn nói?
stevenvh

6

Loại bộ nhớ này lưu trữ dữ liệu dưới dạng phí nhỏ trên các cổng FET cách điện. Điều này về cơ bản giữ cổng FET ở mức điện áp cao hoặc thấp. Một cách khác để xem xét điều tương tự là 1 hoặc 0 được lưu dưới dạng điện áp trên một tụ điện được kết nối với cổng FET.

Việc lưu trữ phí không phải là vĩnh viễn. Cuối cùng, điện tích đủ sẽ bị rò rỉ để trạng thái ban đầu của bit không thể được xác định một cách đáng tin cậy nữa. Nhiệt độ cao hơn giúp sạc dễ dàng hơn một chút, đó là lý do tại sao thông số lưu giữ dữ liệu ngắn hơn ở nhiệt độ cao.

Đối với ppm, có "phần triệu". Đó là khái niệm tương tự như phần trăm, đó chỉ là một cách khác để nói về các phần trăm. 100ppm = .01% = .0001


4

Trong attiny (cũng như nhiều uC khác) dữ liệu 'vĩnh viễn' được lưu trữ trong bộ nhớ flash - về cơ bản là một bóng bán dẫn đặc biệt có thể 'bẫy' điện tích (như tụ điện). Bí quyết là không có "dây" kết nối với tụ điện này - vì vậy họ chỉ có cách sạc hoặc xả nó - là thông qua đường hầm lượng tử. Điều này có nghĩa là nó phóng điện rất chậm và khá khó để sạc / xả nó (mỗi lần sạc / xả này làm hỏng bóng bán dẫn, đó là lý do tại sao nó bị giới hạn ở mức xóa 10k).

Tốc độ của sự phóng điện này được xác định theo kinh nghiệm và bạn thấy nó trong biểu dữ liệu.

Nhưng đây là giá trị 'điển hình' - bạn có thể nhận được cả thời gian lưu trữ dữ liệu cao hơn & thấp hơn nhiều - điều này có thể có một chút ngẫu nhiên. Không có cách chính xác để tìm hiểu trước khi dữ liệu sẽ biến mất. Vì vậy, đó là lý do tại sao bạn thấy sự gần đúng này trong biểu dữ liệu + ước tính số lượng thiết bị sẽ tệ hơn ước tính này.


1
@BarsMonster - Tốc độ xả không thể được xác định hoàn toàn theo kinh nghiệm, vì thiết bị chưa tồn tại được 20 năm. Dữ liệu thực nghiệm chỉ là cơ sở cho một phương pháp thống kê, làm tăng thêm trọng lượng trong đó.
stevenvh

@stevenvh Có thể nếu bạn làm như vậy ở nhiệt độ cao. Ngoài ra, thay đổi ngưỡng của bóng bán dẫn được thay đổi liên tục, do đó bạn không chỉ đợi cho đến khi nó chuyển từ 1 sang 0, mà là theo dõi quá trình với độ chính xác 0,01%.
BarsMonster

@BarsMonster - chỉ là bạn không thể thực hiện phép ngoại suy tuyến tính về điều này. Đó là một quan niệm sai lầm phổ biến về MTTF: nếu nói 1 triệu giờ thì rất nhiều người nghĩ rằng trên 1000 thiết bị kiểm tra có 1 lỗi sau 1000 giờ, và đó sẽ là nơi mà hàng triệu giờ xuất phát. Nó không đơn giản.
stevenvh

@stevenvh Tôi không nói nó tuyến tính :-)
BarsMonster

@stevenvh: Tôi không quen với MTTF. Tôi quen thuộc với MTBF, từ những gì tôi hiểu về cơ bản là nghịch đảo xác suất một thiết bị hoạt động trong một khoảng thời gian nhất định sẽ gặp phải lỗi. Vì vậy, nếu một thiết bị hoạt động trong một giờ có khả năng thất bại một triệu trong số đó, thì đó là một MTBF là 1.000.000 giờ. Nếu mọi thiết bị sẽ hoạt động chính xác trong 1.000 giờ, thì MTBF cho các thiết bị mới sẽ là vô hạn, nhưng nó sẽ giảm xuống mức không có gì khi các thiết bị chạm mốc 1.000 giờ. Nhìn thoáng qua, MTTF có vẻ tương tự ...
supercat
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.