bbogush/nand_programmer

Wrong timing calculation code?

7134956 opened this issue · 1 comments

std::array<uint32_t, 5> setupArr = { params[CHIP_PARAM_T_CH],

std::array<uint32_t, 3> hiZArr = { params[CHIP_PARAM_T_CH],

/* (SET + 1) * tHCLK >= max(tCH, tCLS, tALS, tCLR, tAR) - tWP */

/* (HIZ + 1) * tHCLK >= max(tCH, tALS, tCLS) + (tWP - tDS) */

This does not match the appnote.
tCH or tCS.

waitSetupTime = std::max(params[CHIP_PARAM_T_WP], params[CHIP_PARAM_T_WP]);

waitSetupTime = std::max(params[CHIP_PARAM_T_WP], params[CHIP_PARAM_T_RP]);

image

This is how my samsung chips read fine:
7134956@6ec011d

Good catch. Thank you!