[][src]Struct xc2bit::XC2MCLargeIOB

pub struct XC2MCLargeIOB {
    pub zia_mode: XC2IOBZIAMode,
    pub ibuf_mode: XC2IOBIbufMode,
    pub obuf_uses_ff: bool,
    pub obuf_mode: XC2IOBOBufMode,
    pub termination_enabled: bool,
    pub slew_is_fast: bool,
    pub uses_data_gate: bool,
}

Represents an I/O pin on "large" (128 and greater macrocell) devices.

Fields

zia_mode: XC2IOBZIAMode

Mux selection for the ZIA input for this pin

ibuf_mode: XC2IOBIbufMode

Selects the input mode for this pin

obuf_uses_ff: bool

Selects the source used to drive this pin's output (if the output is enabled). false selects the XOR gate in the macrocell (combinatorial output), and true selects the register output (registered output).

obuf_mode: XC2IOBOBufMode

Selects the output mode for this pin

termination_enabled: bool

Selects if the global termination (bus hold or pull-up) is enabled on this pin

slew_is_fast: bool

Selects if fast slew rate is used on this pin

uses_data_gate: bool

Whether this pin is making use of the DataGate feature

Methods

impl XC2MCLargeIOB[src]

pub fn encode_jed_internal<T: ?Sized>(&self, fuses: &mut T, start_coord: usize) where
    T: IndexMut<usize, Output = bool>, 
[src]

impl XC2MCLargeIOB[src]

pub fn decode_jed_internal<T: ?Sized>(
    fuses: &T,
    start_coord: usize
) -> Result<Self, XC2BitError> where
    T: Index<usize, Output = bool>, 
[src]

impl XC2MCLargeIOB[src]

pub fn dump_human_readable<W: Write>(
    &self,
    device: XC2Device,
    my_idx: u32,
    writer: W
) -> Result<(), Error>
[src]

Dump a human-readable explanation of the settings for this pin to the given writer object. my_idx must be the index of this I/O pin in the internal numbering scheme.

pub fn to_crbit(&self, device: XC2Device, iob: u32, fuse_array: &mut FuseArray)[src]

Write the crbit representation of the settings for this IO pin to the given fuse_array. device must be the device type this FB was extracted from. iob must be the index of this IO pin.

pub fn from_crbit(
    device: XC2Device,
    iob: u32,
    fuse_array: &FuseArray
) -> Result<Self, XC2BitError>
[src]

Read the crbit representation of the settings for this IO pin from the given fuse_array. device must be the device type this FB was extracted from. iob must be the index of this IO pin.

pub fn from_jed(fuses: &[bool], fuse_idx: usize) -> Result<Self, XC2BitError>[src]

Internal function that reads only the IO-related bits from the macrocell configuration

pub fn to_jed(&self, jed: &mut JEDECFile, fuse_base: usize)[src]

Helper that prints the IOB configuration on the "large" parts

Trait Implementations

impl Clone for XC2MCLargeIOB[src]

impl Copy for XC2MCLargeIOB[src]

impl Debug for XC2MCLargeIOB[src]

impl Default for XC2MCLargeIOB[src]

fn default() -> Self[src]

Returns a "default" I/O pin configuration. The default state is for the output and the input into the ZIA to be disabled.

impl<'de> Deserialize<'de> for XC2MCLargeIOB[src]

impl Eq for XC2MCLargeIOB[src]

impl Hash for XC2MCLargeIOB[src]

impl PartialEq<XC2MCLargeIOB> for XC2MCLargeIOB[src]

impl Serialize for XC2MCLargeIOB[src]

impl StructuralEq for XC2MCLargeIOB[src]

impl StructuralPartialEq for XC2MCLargeIOB[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.