结构体 | |
struct | NandFlashTiming |
struct | NandFlash |
类型定义 | |
typedef enum FlashType | FlashType |
typedef struct NandFlashTiming | NandFlashTiming |
枚举 | |
enum | { SLC_PAGE = 0, MLC_LOWER_PAGE = 0, MLC_UPPER_PAGE = 1, TLC_LOWER_PAGE = 0, TLC_CENTER_PAGE = 1, TLC_UPPER_PAGE = 2, QLC_LOWER_PAGE = 0, QLC_LOWER_CENTER_PAGE = 1, QLC_UPPER_CENTER_PAGE = 2, QLC_UPPER_PAGE = 3 } |
enum | FlashType { SLC = 1, MLC = 2, TLC = 3, QLC = 4, PLC = 5, MAX_FLASH_TYPE = 6 } |
函数 | |
static uint8_t | get_page_type (int flash_type, int pg) |
static int64_t | get_page_read_latency (int flash_type, int page_type) |
static int64_t | get_page_write_latency (int flash_type, int page_type) |
static int64_t | get_blk_erase_latency (int flash_type) |
int | init_nand_flash (void *opaque) |
变量 | |
static struct NandFlashTiming | nand_flash_timing |
static int | slc_tbl [MAX_SUPPORTED_PAGES_PER_BLOCK] |
static int | mlc_tbl [MAX_SUPPORTED_PAGES_PER_BLOCK] |
static int | tlc_tbl [MAX_SUPPORTED_PAGES_PER_BLOCK] |
static int | qlc_tbl [MAX_SUPPORTED_PAGES_PER_BLOCK] |
#define MAX_SUPPORTED_PAGES_PER_BLOCK (512) |
#define MLC_BLOCK_ERASE_LATENCY_NS (3000000) |
#define MLC_CHNL_PAGE_TRANSFER_LATENCY_NS (52433) |
#define MLC_LOWER_PAGE_READ_LATENCY_NS (48000) |
#define MLC_LOWER_PAGE_WRITE_LATENCY_NS (850000) |
#define MLC_UPPER_PAGE_READ_LATENCY_NS (64000) |
#define MLC_UPPER_PAGE_WRITE_LATENCY_NS (2300000) |
#define QLC_BLOCK_ERASE_LATENCY_NS (3000000) |
#define QLC_CENTER_LOWER_PAGE_READ_LATENCY_NS (TLC_CENTER_PAGE_READ_LATENCY_NS * 1.1) |
#define QLC_CENTER_LOWER_PAGE_WRITE_LATENCY_NS (TLC_CENTER_PAGE_WRITE_LATENCY_NS * 1.1) |
#define QLC_CENTER_UPPER_PAGE_READ_LATENCY_NS (TLC_UPPER_PAGE_READ_LATENCY_NS * 1.2) |
#define QLC_CENTER_UPPER_PAGE_WRITE_LATENCY_NS (TLC_UPPER_PAGE_WRITE_LATENCY_NS * 1.2) |
#define QLC_CHNL_PAGE_TRANSFER_LATENCY_NS (52433) |
#define QLC_LOWER_PAGE_READ_LATENCY_NS (TLC_LOWER_PAGE_READ_LATENCY_NS * 1.05) |
#define QLC_LOWER_PAGE_WRITE_LATENCY_NS (TLC_LOWER_PAGE_WRITE_LATENCY_NS * 1.05) |
#define QLC_UPPER_PAGE_READ_LATENCY_NS (TLC_UPPER_PAGE_READ_LATENCY_NS * 1.6) |
#define QLC_UPPER_PAGE_WRITE_LATENCY_NS (TLC_UPPER_PAGE_WRITE_LATENCY_NS * 1.6) |
#define SLC_BLOCK_ERASE_LATENCY_NS (2000000) |
#define SLC_CHNL_PAGE_TRANSFER_LATENCY_NS (20000) |
#define SLC_PAGE_READ_LATENCY_NS (40000) |
#define SLC_PAGE_WRITE_LATENCY_NS (800000) |
#define TLC_BLOCK_ERASE_LATENCY_NS (3000000) |
#define TLC_CENTER_PAGE_READ_LATENCY_NS (77500) |
#define TLC_CENTER_PAGE_WRITE_LATENCY_NS (2225000) |
#define TLC_CHNL_PAGE_TRANSFER_LATENCY_NS (52433) |
#define TLC_LOWER_PAGE_READ_LATENCY_NS (56500) |
#define TLC_LOWER_PAGE_WRITE_LATENCY_NS (820500) |
#define TLC_UPPER_PAGE_READ_LATENCY_NS (106000) |
#define TLC_UPPER_PAGE_WRITE_LATENCY_NS (5734000) |
typedef struct NandFlashTiming NandFlashTiming |
anonymous enum |
enum FlashType |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
int init_nand_flash | ( | void * | opaque | ) |
|
static |
|
static |
|
static |
|
static |
|
static |