stm32_fmc/devices/s34ml08g3.rs
1/// SkyHigh S34ML08G3 SLC NAND Flash
2#[allow(unused)]
3
4/// SkyHigh S34ML08G3 SLC NAND Flash with 4kB pages
5pub mod s34ml08g3_4kb {
6 use crate::nand::{NandChip, NandConfiguration, NandTiming};
7
8 /// S32ML08G3
9 #[derive(Clone, Copy, Debug, PartialEq)]
10 pub struct S34ml08g3 {}
11
12 impl NandChip for S34ml08g3 {
13 /// Timing Parameters
14 const TIMING: NandTiming = NandTiming {
15 nce_setup_time: 15, // tCS = 15ns min
16 data_setup_time: 7, // tDS = 7ns min
17 ale_hold_time: 5, // tALH = 5ns min
18 cle_hold_time: 5, // tCLH = 5ns min
19 ale_to_nre_delay: 10, // tAR = 10ns min
20 cle_to_nre_delay: 10, // tCLR = 10ns min
21 nre_pulse_width_ns: 10, // tRP = 10ns min
22 nwe_pulse_width_ns: 10, // tWP = 10ns min
23 read_cycle_time_ns: 20, // tRC = 20ns min
24 write_cycle_time_ns: 20, // tWC = 20ns min
25 nwe_high_to_busy_ns: 100, // tWB = 100ns max
26 };
27
28 /// Nand controller configuration
29 const CONFIG: NandConfiguration = NandConfiguration {
30 data_width: 8, // 8-bit
31 column_bits: 12, // 4096 byte pages
32 };
33 }
34}