1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
use rust_hdl::core::prelude::*;
pub fn map_signal_type_to_lattice_string(k: &SignalType) -> &str {
match k {
SignalType::LowVoltageCMOS_3v3 => "LVCMOS33",
_ => panic!(
"Unsupported mapping for signal type {:?} in Lattice mapping",
k
),
}
}
pub fn map_signal_type_to_xilinx_string(k: &SignalType) -> &str {
match k {
SignalType::LowVoltageCMOS_1v8 => "LVCMOS18",
SignalType::LowVoltageCMOS_3v3 => "LVCMOS33",
SignalType::StubSeriesTerminatedLogic_II => "SSTL18_II",
SignalType::DifferentialStubSeriesTerminatedLogic_II => "DIFF_SSTL18_II",
SignalType::StubSeriesTerminatedLogic_II_No_Termination => "SSTL18_II | IN_TERM=NONE",
SignalType::DifferentialStubSeriesTerminatedLogic_II_No_Termination => {
"DIFF_SSTL18_II | IN_TERM=NONE"
}
SignalType::Custom(c) => c,
SignalType::LowVoltageDifferentialSignal_2v5 => "LVDS_25",
SignalType::StubSeriesTerminatedLogic_1v5 => "SSTL15",
SignalType::LowVoltageCMOS_1v5 => "LVCMOS15",
SignalType::DifferentialStubSeriesTerminatedLogic_1v5 => "DIFF_SSTL15",
}
}
pub mod ecp5;
pub mod icestorm;
pub mod ise;
pub mod vivado;