#[allow(unused)]
pub mod as4c16m32msa_6 {
use crate::sdram::{SdramChip, SdramConfiguration, SdramTiming};
const BURST_LENGTH_1: u16 = 0x0000;
const BURST_LENGTH_2: u16 = 0x0001;
const BURST_LENGTH_4: u16 = 0x0002;
const BURST_LENGTH_8: u16 = 0x0004;
const BURST_TYPE_SEQUENTIAL: u16 = 0x0000;
const BURST_TYPE_INTERLEAVED: u16 = 0x0008;
const CAS_LATENCY_1: u16 = 0x0010;
const CAS_LATENCY_2: u16 = 0x0020;
const CAS_LATENCY_3: u16 = 0x0030;
const OPERATING_MODE_STANDARD: u16 = 0x0000;
const WRITEBURST_MODE_PROGRAMMED: u16 = 0x0000;
const WRITEBURST_MODE_SINGLE: u16 = 0x0200;
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct As4c16m32msa {}
impl SdramChip for As4c16m32msa {
const MODE_REGISTER: u16 = BURST_LENGTH_1
| BURST_TYPE_SEQUENTIAL
| CAS_LATENCY_3
| OPERATING_MODE_STANDARD
| WRITEBURST_MODE_SINGLE;
const TIMING: SdramTiming = SdramTiming {
startup_delay_ns: 200_000, max_sd_clock_hz: 166_000_000, refresh_period_ns: 7_813, mode_register_to_active: 2, exit_self_refresh: 14, active_to_precharge: 8, row_cycle: 10, row_precharge: 3, row_to_column: 3, };
const CONFIG: SdramConfiguration = SdramConfiguration {
column_bits: 9, row_bits: 13, memory_data_width: 32, internal_banks: 4, cas_latency: 3, write_protection: false,
read_burst: true,
read_pipe_delay_cycles: 0,
};
}
}