use super::WIDE_BUS_WIDTH;
use crate::data_block;
pub const DATA_BLOCK_4096: usize = 4096;
pub const WIDE_DATA_BLOCK_4096: usize = DATA_BLOCK_4096 / WIDE_BUS_WIDTH;
data_block! {
DataBlock4K: DATA_BLOCK_4096,
WideDataBlock4K: WIDE_DATA_BLOCK_4096,
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_wide_data_block() {
[
DataBlock4K::new(),
DataBlock4K::from_bytes([0xff; DATA_BLOCK_4096]),
]
.into_iter()
.zip([
WideDataBlock4K::new(),
WideDataBlock4K::from_data_lines(
[0xff; WIDE_DATA_BLOCK_4096],
[0xff; WIDE_DATA_BLOCK_4096],
[0xff; WIDE_DATA_BLOCK_4096],
[0xff; WIDE_DATA_BLOCK_4096],
),
])
.for_each(|(data_block, exp_wide_data_block)| {
assert_eq!(data_block.wide_data(), exp_wide_data_block);
assert_eq!(exp_wide_data_block.decode(), data_block);
});
}
}