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}