Расчёт таймингов Nandflash

Предыдущая  Содержание  Следующая  V*D*V
Nandflash диаграмма записи

Nandflash диаграмма записи

CPU диаграмма записи в nandflash

CPU диаграмма записи в nandflash

Nandflash диаграмма чтения

Nandflash диаграмма чтения

CPU диаграмма чтения из nandflash

CPU диаграмма чтения из nandflash

 

Приведены параметры микросхемы K9F2G08U0M выпуска до 2004г., в скобках - после 2004г.

Timing

Name

Value (ns)

Min / Max

SMC Description for “CE don’t Care” NAND

SMC Description for Standard NAND

Value @ 100 MHz (cycles)

Setup

tCLS

25 (10)

 

NWE Setup + NWE Pulse

N/A - CE is a PIO line

3

tALS

25 (10)

 

NWE Setup + NWE Pulse

N/A - CE is a PIO line

3

tCS

35 (15)

 

NWE Setup + NWE Pulse

N/A - CE is a PIO line

4

tDS

20 (10)

 

NWE Setup + NWE Pulse

NWE Setup + NWE Pulse

2

tCEA

 

45 (23)

Not programmable

Not programmable

 

tREA

 

30 (18)

Not programmable

Not programmable

 

tRR

20

 

managed by software

managed by software

 

Hold

tCLH

10 (5)

 

NWE Hold

NWE Hold

1

tALH

10 (5)

 

NWE Hold

NWE Hold

1

tCH

10 (5)

 

NWE Hold

N/A - CE is a PIO line

1

tDH

10 (5)

 

Data Float Time

Data Float Time

1

tOH

15

 

Data Float Time

Data Float Time

2

tREH

15 (10)

 

NRD Cycle - NRD Pulse

NRD Cycle - NRD Pulse

2

Pulse

tWP

25 (15)

 

NWE pulse length

NWE pulse length

3

tRP

25 (15)

 

NRD pulse length

NRD pulse length

3

tWC

45 (30)

 

NWE cycle

NWE cycle

5

tRC

50 (30)

 

NRD cycle

NRD cycle

5

 

порядок расчёта:

AT91C_SM_NWE_PULSE = tWP (1 min)

AT91C_SM_NRD_PULSE = tRP (1 min)

AT91C_SM_TDF = max(tDH, tOH)

AT91C_SM_NWE_SETUP = max(tCLS,tALS,tCS,tDS) - AT91C_SM_NWE_PULSE

AT91C_SM_NRD_SETUP = AT91C_SM_NWE_SETUP

AT91C_SM_NRD_CYCLE = tREH + AT91C_SM_NRD_PULSE

AT91C_SM_NWE_CYCLE = AT91C_SM_NRD_CYCLE

AT91C_SM_NCS_RD_PULSE = AT91C_SM_NRD_PULSE (1 min)

AT91C_SM_NCS_WR_PULSE = max(tCS + tCH, tWP) (1 min)

 

проверка:

NWE_HOLD = max(tCLH,tALH,tCH) = AT91C_SM_NRD_CYCLE - AT91C_SM_NRD_PULSE - AT91C_SM_NRD_SETUP

tREH = AT91C_SM_NRD_CYCLE - AT91C_SM_NRD_PULSE

max(tCLS,tALS,tCS,tDS) = AT91C_SM_NWE_SETUP + AT91C_SM_NWE_PULSE

 

Параметры из at91sam9260ek.h:

 

#define AT91C_SM_NWE_SETUP        (1 << 0)

#define AT91C_SM_NCS_WR_SETUP        (0 << 8)

#define AT91C_SM_NRD_SETUP        (1 << 16)

#define AT91C_SM_NCS_RD_SETUP        (0 << 24)

  

#define AT91C_SM_NWE_PULSE         (3 << 0)

#define AT91C_SM_NCS_WR_PULSE        (3 << 8)

#define AT91C_SM_NRD_PULSE        (3 << 16)

#define AT91C_SM_NCS_RD_PULSE        (3 << 24)

  

#define AT91C_SM_NWE_CYCLE         (5 << 0)

#define AT91C_SM_NRD_CYCLE        (5 << 16)

#define AT91C_SM_TDF                (2 << 16)

Предыдущая  Содержание  Следующая