Most newer aircraft, plus some retrofitted older aircraft, have flight recorders that use solid-state flash memory as their recording medium, instead of the magnetic-tape recorders previously used (or the even older metal-foil oscillographic FDRs). This has many benefits (vastly greater storage capacity, much-improved crash-survivability, lower power requirements, greater reliability, etc.).

Solid-state devices generally use some form of wear levelling to prolong the lifetime of their flash memory, where the device distributes write operations throughout its flash so as to preferentially write to memory cells with fewer accumulated writes under their belts. As flash-memory cells become unreliable after a certain number of writes or thereabouts, this helps keep any individual cell from running up against its limit too quickly, making the device as a whole last longer before it starts experiencing memory-cell failures; however, it also destroys the direct correspondence that would otherwise be present between the physical and logical locations of any particular piece of data:

solid-state scramblin'

(Image by Attie at Super User.)

As a result, the device, and its users, are totally dependent on the device's memory controller to remember what physical addresses map to what logical addresses and to translate between physical and logical addresses; if one were to look directly at the flash memory itself, one would see only meaningless gibberish.

In contrast, magnetic storage preserves the direct mapping of physical to logical addresses; tape stores its data in rigid sequential order by its very nature, while floppy and hard disks (not used in flight recorders due to the minuscule capacity of floppies, the unreliability of "superfloppy" formats such as zip drives, and the fragility of HDDs, but the closest magnetic-storage equivalent to an SSD), although they do fragment data throughout the disk (unless nothing is ever erased from the disk, in which case they record sequentially), do so far less than wear-levelled solid-state media (fragmenting only when a piece of data is too large to fit in its entirety in the chunk of available space at hand), and store the data necessary to reassemble these fragments in the filesystem itself.

As a result, even if a magnetic storage medium is physically fragmented by a violent impact and its recording mechanism totally destroyed, any data on the individual pieces of the storage medium can still mostly be recovered (albeit with great effort), whereas, if the memory controller of a wear-levelled solid-state recorder were destroyed by impact and the individual memory chips torn from the recorder, the loss of the memory controller's internal remapping table would render any attempts to directly read the memory chips futile, even if they survived completely intact.

A non-wear-levelled solid-state recorder, in contrast, would accumulate dead memory cells more quickly than a wear-levelled recorder (shortening the overall lifespan of the recorder's storage medium and requiring that it be overhauled more frequently to replace failed memory), but would preserve the direct mapping between physical and logical memory addresses, allowing meaningful data to be recovered from the memory chips even if the rest of the recorder were completely destroyed.

Given all this, do solid-state flight recorders use wear levelling like most solid-state storage devices do (increasing the recorder's lifespan at the expense of potentially rendering the stored data unrecoverable if the recorder's memory controller is destroyed), or do they forgo it (improving the chance of being able to recover data from a very severely damaged or partially-to-mostly-destroyed recorder, and accepting the resultant hit to the overall service life of the recorder's storage medium)?

1: Which was actually a step down from the older foil recorders, which lasted for many weeks before the foil ran out (although at the expense of only being able to record a single-digit number of parameters and not being useable for the CVR); additionally, since the foil couldn't be reused, one could potentially retrieve FDR data from even further back in time by burrowing through the operator's FDR-foil archive.

  • 10
    $\begingroup$ I would be surprised if flight recorders do employ wear-levelling. That technique is really only useful in a situation where some memory locations are undergoing significantly more write cycles than others. But flight recorders, by their very nature, record information cyclically. $\endgroup$ – Fiddlesticks Feb 15 '20 at 20:45
  • 2
    $\begingroup$ The question is, where that table of mappings is stored. One of the obvious places to store it is to use part of the same memory chip, storing nothing in the controller. $\endgroup$ – h22 Feb 15 '20 at 23:10
  • 2
    $\begingroup$ @h22, there is nothing stopping you from writing a flash memory linearly just like a tape. Then it does not have any mapping table. I don't know whether they actually do that, but it would make most sense. $\endgroup$ – Jan Hudec Feb 17 '20 at 22:42
  • 2
    $\begingroup$ @h22, also, most embedded devices don't have special wear-levelling controllers, but use log-structured filesystems to avoid non-uniform wear. Wear-levelling is only used on memory cards and SSDs designed as drop-in replacement for spinning disks because the filesystems designed for spinning disks are particularly bad in this regard, FAT being the far worst. $\endgroup$ – Jan Hudec Feb 17 '20 at 22:48
  • $\begingroup$ I don't know what kind of memory is used in FDRs. One type that would be great is Ferroelectric RAM (FRAM), which can have 10 trillion write cycle capability and not need battery backup to retain the data. 10^14. One could write to 1 location once a second for 317 years before wearing it out. $\endgroup$ – CrossRoads Feb 18 '20 at 3:38

I have not worked on Flight Data Recorders specifically, but considering the format, sampling rate, and storage requirements, I would expect that no wear leveling is incorporated because it isn't necessary.

Data would be stored sequentially, and the only time data would need to be erased is when it needs to be overwritten due to the entire storage region being full (a circular buffer).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.