pub struct CardControl {Show 37 fields
pub ticks: b64,
pub messages: b64,
pub signatures: b64,
pub count: b32,
pub seed: [b32; 8],
pub running: bool,
pub clearing: bool,
pub key_taken: bool,
pub key_ticked: bool,
pub done: bool,
pub finished: bool,
pub gie: bool,
pub ier: bool,
pub isr: bool,
pub start_tick: b64,
pub key_tick: b64,
pub done_tick: b64,
pub requested: b32,
pub received: b32,
pub admitted: b32,
pub completed: b32,
pub sent: b32,
pub acked: b32,
pub ar_pending: bool,
pub aw_done: bool,
pub w_done: bool,
pub writing: bool,
pub cur: SigEntry,
pub fault: b4,
pub aw_have: bool,
pub aw_addr: b12,
pub w_have: bool,
pub w_data: b32,
pub b_valid: bool,
pub r_valid: bool,
pub r_data: b32,
pub ticks_hi: b32,
}Expand description
The kernel’s control registers.
Fields§
§ticks: b64Free-running cycle counter.
messages: b64messages.
signatures: b64signatures.
count: b32count.
seed: [b32; 8]The seed.
running: boolRunning.
clearing: boolThe previous run’s key is being cleared (the cycle after start).
key_taken: boolThe key load was offered and taken.
key_ticked: boolThe key is cached (latched once per run).
done: boolDone, ap_done not yet read.
finished: boolEver done (for ap_idle).
gie: boolGIE, IER, ISR.
ier: boolIER bit 0.
isr: boolISR bit 0.
start_tick: b64Latched ticks.
key_tick: b64Key cached.
done_tick: b64Last signature acknowledged.
requested: b32Beats requested from memory.
received: b32Beats received into the message FIFO.
admitted: b32Messages admitted to the signer.
completed: b32Signatures completed by the signer.
sent: b32Signatures handed to memory (AW and W both taken).
acked: b32Signatures acknowledged (B).
ar_pending: boolAR outstanding: requested address and length accepted flag.
aw_done: boolThe write in progress: AW taken, W taken.
w_done: boolW taken.
writing: boolThe head signature is being written.
cur: SigEntryThe signature being written.
fault: b4Faults (FAULT).
aw_have: boolAXI4-Lite: write address captured.
aw_addr: b12Its address.
w_have: boolWrite data captured.
w_data: b32Its word.
b_valid: boolB pending.
r_valid: boolR pending.
r_data: b32R word.
ticks_hi: b32TICKS high word, snapshotted when the low word is read.
Trait Implementations§
Source§impl Clone for CardControl
impl Clone for CardControl
Source§fn clone(&self) -> CardControl
fn clone(&self) -> CardControl
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CardControl
impl Debug for CardControl
Source§impl Default for CardControl
impl Default for CardControl
Source§fn default() -> CardControl
fn default() -> CardControl
Source§impl Digital for CardControl
impl Digital for CardControl
Source§const BITS: usize
const BITS: usize
Source§fn static_kind() -> Kind
fn static_kind() -> Kind
Source§fn bin(self) -> Box<[BitX]>
fn bin(self) -> Box<[BitX]>
§fn typed_bits(self) -> TypedBits
fn typed_bits(self) -> TypedBits
§fn discriminant(self) -> TypedBits
fn discriminant(self) -> TypedBits
§fn variant_kind(self) -> Kind
fn variant_kind(self) -> Kind
§fn binary_string(self) -> String
fn binary_string(self) -> String
Source§impl PartialEq for CardControl
impl PartialEq for CardControl
impl Copy for CardControl
impl StructuralPartialEq for CardControl
Auto Trait Implementations§
impl Freeze for CardControl
impl RefUnwindSafe for CardControl
impl Send for CardControl
impl Sync for CardControl
impl Unpin for CardControl
impl UnsafeUnpin for CardControl
impl UnwindSafe for CardControl
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg] or
a color-specific method, such as [OwoColorize::green], Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg] or
a color-specific method, such as [OwoColorize::on_yellow], Read more