[I’ll edit this article in multiple iterations.]
Lets’ start with a brief overview of data structure groupings by Flash Translation Layer (FTL) components or functions. Please keep in mind that some data structures are used by multiple FTL components or functions.
Address mapping Direct mapping table Mapping cache Global Mapping Directory (GMD) Reverse mapping Garbage Collection Block validity counter (BVC) Page validity counter (PVC) Transaction processing Free block list Data cache Chip queue Wear Leveling Bad block management FTL recovery/restore