ftl相关数据声明 更多...
#include "../nvme.h"
结构体 | |
struct | ppa |
describe a physical page addr 更多... | |
struct | nand_page |
页 更多... | |
struct | nand_block |
块 更多... | |
struct | nand_plane |
plane 更多... | |
struct | nand_lun |
晶圆 更多... | |
struct | ssd_channel |
通道 更多... | |
struct | ssdparams |
ssd参数 更多... | |
struct | line |
line 更多... | |
struct | write_pointer |
wp: record next write addr 更多... | |
struct | line_mgmt |
记录各种line的列表和数量 更多... | |
struct | nand_cmd |
struct | ssd |
模拟一个ssd 更多... | |
宏定义 | |
#define | INVALID_PPA (~(0ULL)) |
#define | INVALID_LPN (~(0ULL)) |
#define | UNMAPPED_PPA (~(0ULL)) |
#define | BLK_BITS (16) |
#define | PG_BITS (16) |
#define | SEC_BITS (8) |
#define | PL_BITS (8) |
#define | LUN_BITS (8) |
#define | CH_BITS (7) |
#define | ftl_debug(fmt, ...) do { } while (0) |
#define | ftl_err(fmt, ...) do { fprintf(stderr, "[FEMU] FTL-Err: " fmt, ## __VA_ARGS__); } while (0) |
#define | ftl_log(fmt, ...) do { printf("[FEMU] FTL-Log: " fmt, ## __VA_ARGS__); } while (0) |
#define | ftl_assert(expression) |
类型定义 | |
typedef int | nand_sec_status_t |
typedef struct line | line |
line 更多... | |
枚举 | |
enum | { NAND_READ = 0, NAND_WRITE = 1, NAND_ERASE = 2, NAND_READ_LATENCY = 40000, NAND_PROG_LATENCY = 200000, NAND_ERASE_LATENCY = 2000000 } |
NAND物理时延设置 更多... | |
enum | { USER_IO = 0, GC_IO = 1 } |
enum | { SEC_FREE = 0, SEC_INVALID = 1, SEC_VALID = 2, PG_FREE = 0, PG_INVALID = 1, PG_VALID = 2 } |
enum | { FEMU_ENABLE_GC_DELAY = 1, FEMU_DISABLE_GC_DELAY = 2, FEMU_ENABLE_DELAY_EMU = 3, FEMU_DISABLE_DELAY_EMU = 4, FEMU_RESET_ACCT = 5, FEMU_ENABLE_LOG = 6, FEMU_DISABLE_LOG = 7 } |
函数 | |
void | ssd_init (FemuCtrl *n) |
初始化ssd参数,为ssd各层结构体分配空间,创建ftl线程 更多... | |
ftl相关数据声明
#define BLK_BITS (16) |
#define CH_BITS (7) |
#define ftl_assert | ( | expression | ) |
#define ftl_debug | ( | fmt, | |
... | |||
) | do { } while (0) |
#define ftl_err | ( | fmt, | |
... | |||
) | do { fprintf(stderr, "[FEMU] FTL-Err: " fmt, ## __VA_ARGS__); } while (0) |
#define ftl_log | ( | fmt, | |
... | |||
) | do { printf("[FEMU] FTL-Log: " fmt, ## __VA_ARGS__); } while (0) |
#define INVALID_LPN (~(0ULL)) |
#define INVALID_PPA (~(0ULL)) |
#define LUN_BITS (8) |
#define PG_BITS (16) |
#define PL_BITS (8) |
#define SEC_BITS (8) |
#define UNMAPPED_PPA (~(0ULL)) |
typedef int nand_sec_status_t |
anonymous enum |
anonymous enum |
void ssd_init | ( | FemuCtrl * | n | ) |
初始化ssd参数,为ssd各层结构体分配空间,创建ftl线程
n |