Skip to main content

Args

Struct Args 

Source
pub struct Args {
Show 18 fields pub input_file: PathBuf, pub clk_freq: f64, pub clock_name: Option<String>, pub output_format: OutputFormat, pub limit_scope: Option<String>, pub limit_scope_power: Option<String>, pub netlist: Option<PathBuf>, pub top: Option<String>, pub top_scope: Option<String>, pub blackboxes_only: bool, pub remove_virtual_pins: bool, pub output: Option<PathBuf>, pub ignore_date: bool, pub ignore_version: bool, pub per_clock_cycle: bool, pub only_glitches: bool, pub export_empty: bool, pub input_ports_activity: bool,
}
Expand description

trace2power - Extract acccumulated power activity data from VCD/FST

Fields§

§input_file: PathBuf

Trace file

§clk_freq: f64

Clock frequency (in Hz)

§clock_name: Option<String>

Clock signal name

§output_format: OutputFormat

Format to extract data into

§limit_scope: Option<String>

Scope in which signals should be looked for. By default it’s the global hierarchy scope.

§limit_scope_power: Option<String>

Scope in which power will be calculated. By default it’s equal to limit_scope. Must be a subset of limit_scope.

§netlist: Option<PathBuf>

Yosys JSON netlist of DUT. Can be used to identify ports of primitives when exporting data. Allows skipping unnecessary or unwanted signals

§top: Option<String>

Name of the top module (DUT)

§top_scope: Option<String>

Scope at which the DUT is located. The loaded netlist will be rooted at this point.

§blackboxes_only: bool

Export only nets from blackboxes (undefined modules) in provided netlist. Those are assumed to be post-synthesis primitives

§remove_virtual_pins: bool

Remove nets that are in blackboxes and have suspicious names: “VGND”, “VNB”, “VPB”, “VPWR”.

§output: Option<PathBuf>

Write the output to a specified file instead of stdout. In case of per clock cycle output, it must be a directory.

§ignore_date: bool

Ignore exporting current date.

§ignore_version: bool

Ignore exporting current version.

§per_clock_cycle: bool

Accumulate stats for each clock cycle separately. Output path is required to be a directory.

§only_glitches: bool

Write stats only for glitches

§export_empty: bool

Export without accumulation

§input_ports_activity: bool

Set activity for input ports in TCL mode

Implementations§

Source§

impl Args

Source

pub fn from_cli() -> Self

Trait Implementations§

Source§

impl Args for Args

Source§

fn group_id() -> Option<Id>

Report the ArgGroup::id for this set of arguments
Source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate Self via FromArgMatches::from_arg_matches_mut Read more
Source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate self via FromArgMatches::update_from_arg_matches_mut Read more
Source§

impl CommandFactory for Args

Source§

fn command<'b>() -> Command

Build a Command that can instantiate Self. Read more
Source§

fn command_for_update<'b>() -> Command

Build a Command that can update self. Read more
Source§

impl FromArgMatches for Args

Source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

impl Parser for Args

Source§

fn parse() -> Self

Parse from std::env::args_os(), exit on error.
Source§

fn try_parse() -> Result<Self, Error>

Parse from std::env::args_os(), return Err on error.
Source§

fn parse_from<I, T>(itr: I) -> Self
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Parse from iterator, exit on error.
Source§

fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Parse from iterator, return Err on error.
Source§

fn update_from<I, T>(&mut self, itr: I)
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Update from iterator, exit on error. Read more
Source§

fn try_update_from<I, T>(&mut self, itr: I) -> Result<(), Error>
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Update from iterator, return Err on error.

Auto Trait Implementations§

§

impl Freeze for Args

§

impl RefUnwindSafe for Args

§

impl Send for Args

§

impl Sync for Args

§

impl Unpin for Args

§

impl UnsafeUnpin for Args

§

impl UnwindSafe for Args

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.