Kratos API Reference

class kratos.Generator(name: str, debug: bool = False, is_clone: bool = False, internal_generator=None)
add_always(fn, comment='', label='', sensitivity=None, fn_ln=None, unroll_for=False, ssa_transform=False, **kargs)
add_attribute(attr)
add_child(instance_name: str, generator: kratos.generator.Generator, comment='', python_only=False, **kargs)
add_child_generator(instance_name: str, generator: kratos.generator.Generator, comment='', python_only=False, **kargs)
add_code(fn, comment='', label='', sensitivity=None, fn_ln=None, unroll_for=False, ssa_transform=False, **kargs)
add_fsm(fsm_name: str, clk_name=None, reset_name=None, reset_high=True)
add_stmt(stmt, add_ln_info=True)
child_generator()
static clear_context()
static clear_context_hash()
clock(name, is_input=True)
clock_en(name, is_input=True)
classmethod clone(**kargs)
combinational()
classmethod create(**kargs)
debug
def_instance

The definition instance of this generator. It can be itself or the clone reference :return: definition instance

enum(name: str, values: Dict[str, int], width=None)
enum_var(name: str, def_: _kratos.Enum)
external

External module typically is used when importing external verilog files. If set from user, all the passes and code gen will skip this generator definition. :return: True if it’s an external generator

find_attribute(func)
static from_verilog(top_name: str, src_file: str, lib_files: List[str], port_mapping: Dict[str, _kratos.PortType])
static get_context()
get_marked_stmt(name)
get_stmt_by_index(index)
get_var(name)
initialize_clone()
input(name, width: Union[int, _kratos.Param, _kratos.Enum, _kratos.PackedStruct], port_type: _kratos.PortType = <PortType.Data: 0>, is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Port
instance_name

Instance name of a generator. It has to be unique within a parent generator. :return: the instance name of the generator

interface(interface, name, is_port: bool = False)
internal_generator
is_cloned
is_stub

If a generator is mark as a stub, most of the passes won’t touch it and it’s the user’s responsibility to keep track of it. Kratos will attempt to zero out the stub outputs. :return: True if it’s a stub

mark_stmt(name: str, stmt)
name

Generator name usually corresponds to the name of the module. However, if unification happens, its verilog name will change. :return: The name of the generator

output(name, width: Union[int, _kratos.Param, _kratos.Enum, _kratos.PackedStruct], port_type: _kratos.PortType = <PortType.Data: 0>, is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Port
param(name: str, width: int = 32, value=None, is_signed: bool = False, initial_value=None, is_raw_type: bool = False) → _kratos.Param
param_from_def(param: _kratos.Param, name=None)
parameter(name: str, width: int = 32, value=None, is_signed: bool = False, initial_value=None, is_raw_type: bool = False) → _kratos.Param
port(name: str, width: Union[int, _kratos.Param, _kratos.Enum], direction: _kratos.PortDirection, port_type: _kratos.PortType = <PortType.Data: 0>, is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Port
port_bundle(bundle_name, bundle: kratos.ports.PortBundle)
port_from_def(port: _kratos.Port, name='', check_param: bool = True)
property(property_name: str, seq)
reg_enable(var_name, var, en, clk=None)
reg_init(var_name, var, clk=None, reset=None, init_value=0)
reg_next(var_name, var, clk=None)
remove_child_generator(generator)
remove_port(port_name)
remove_stmt(stmt)
remove_var(var_name)
replace(child_name: str, new_child: kratos.generator.Generator)
reset(name, is_input=True, is_async=True, active_high=None)
sequential(*sensitivity_list)
stmts_count
var(name: str, width: Union[int, _kratos.Param, _kratos.Enum, _kratos.PackedStruct], is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Var
var_from_def(var: _kratos.Var, name)
var_packed(name: str, struct_packed: _kratos.PortPackedStruct)
wire(var_to, var_from, attributes: Union[List[_kratos.passes.Attribute], _kratos.passes.Attribute] = None, comment='', locals_=None, fn_ln=None, additional_frame=0, no_fn_ln=False)
class kratos.PortType

Members:

Clock

AsyncReset

ClockEnable

Data

Reset

AsyncReset = <PortType.AsyncReset: 2>
Clock = <PortType.Clock: 1>
ClockEnable = <PortType.ClockEnable: 4>
Data = <PortType.Data: 0>
Reset = <PortType.Reset: 3>
name
value
class kratos.PortDirection

Members:

In

Out

InOut

In = <PortDirection.In: 0>
InOut = <PortDirection.InOut: 2>
Out = <PortDirection.Out: 1>
name
value
class kratos.EventEdgeType

Members:

Posedge

Negedge

Negedge = <EventEdgeType.Negedge: 1>
Posedge = <EventEdgeType.Posedge: 0>
name
value
kratos.verilog(generator: kratos.generator.Generator, optimize_if: bool = True, optimize_passthrough: bool = True, optimize_fanout: bool = True, optimize_bundle: bool = True, reorder_stmts: bool = False, check_active_high: bool = True, debug_fn_ln: bool = False, additional_passes: Dict[KT, VT] = None, int_dpi_interface: bool = True, remove_assertion: bool = False, check_inferred_latch: bool = True, check_multiple_driver: bool = True, check_combinational_loop: bool = True, insert_pipeline_stages: bool = False, filename: str = None, insert_debug_info: bool = False, insert_verilator_info: bool = False, check_flip_flop_always_ff: bool = True, remove_unused: bool = True, merge_const_port_assignment: bool = True, debug_db_filename: str = '', ssa_transform: bool = False, use_parallel: bool = True, track_generated_definition: bool = False, contains_event: bool = False, lift_genvar_instances: bool = False, fix_port_legality: bool = False, dead_code_elimination: bool = False, collect_pass_perf: bool = False, codegen_options: _kratos.SystemVerilogCodeGenOptions = None)
kratos.const(value: Union[str, int], width: int = 32, is_signed: bool = False)
kratos.is_valid_verilog(*args, **kwargs)

Overloaded function.

  1. is_valid_verilog(arg0: str) -> bool

Check if the verilog doesn’t have any syntax errors. Notice that you have to have either verilator or iverilog in your $PATH to use this function

  1. is_valid_verilog(arg0: Dict[str, str]) -> bool

Check if the verilog doesn’t have any syntax errors. Notice that you have to have either verilator or iverilog in your $PATH to use this function

exception kratos.VarException
args
with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

exception kratos.StmtException
args
with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

class kratos.IRVisitor
visit_generator(self: _kratos.passes.IRVisitor, arg0: kratos::Generator) → None
visit_root(self: _kratos.passes.IRVisitor, arg0: kratos::IRNode) → None
class kratos.FSM
add_child_fsm(self: _kratos.FSM, arg0: _kratos.FSM) → None
add_state(*args, **kwargs)

Overloaded function.

  1. add_state(self: _kratos.FSM, arg0: str) -> kratos::FSMState
  2. add_state(self: _kratos.FSM, arg0: str, arg1: Tuple[str, int]) -> kratos::FSMState
current_state
dot_graph(*args, **kwargs)

Overloaded function.

  1. dot_graph(self: _kratos.FSM) -> str
  2. dot_graph(self: _kratos.FSM, arg0: str) -> None
fsm_name(self: _kratos.FSM) → str
get_all_child_fsm(self: _kratos.FSM) → List[_kratos.FSM]
get_state(self: _kratos.FSM, arg0: str) → kratos::FSMState
is_moore(self: _kratos.FSM) → bool
output(*args, **kwargs)

Overloaded function.

  1. output(self: _kratos.FSM, arg0: str) -> None
  2. output(self: _kratos.FSM, arg0: _kratos.Var) -> None
  3. output(self: _kratos.FSM, arg0: _kratos.Var, arg1: _kratos.Var) -> None
  4. output(self: _kratos.FSM, arg0: str, arg1: _kratos.Var) -> None
output_table(*args, **kwargs)

Overloaded function.

  1. output_table(self: _kratos.FSM) -> str
  2. output_table(self: _kratos.FSM, arg0: str) -> None
outputs(self: _kratos.FSM) → Dict[_kratos.Var, _kratos.Var]
realize(self: _kratos.FSM) → None
set_moore(self: _kratos.FSM, arg0: bool) → None
set_reset_high(self: _kratos.FSM, arg0: bool) → None
set_start_state(*args, **kwargs)

Overloaded function.

  1. set_start_state(self: _kratos.FSM, arg0: str) -> None
  2. set_start_state(self: _kratos.FSM, arg0: kratos::FSMState) -> None
  3. set_start_state(self: _kratos.FSM, arg0: str, arg1: Tuple[str, int]) -> None
  4. set_start_state(self: _kratos.FSM, arg0: kratos::FSMState, arg1: Tuple[str, int]) -> None
class kratos.FSMState
name
next(*args, **kwargs)

Overloaded function.

  1. next(self: _kratos.FSMState, arg0: _kratos.FSMState, arg1: _kratos.Var) -> None
  2. next(self: _kratos.FSMState, arg0: _kratos.FSMState, arg1: _kratos.Var, arg2: Tuple[str, int]) -> None
output(*args, **kwargs)

Overloaded function.

  1. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: _kratos.Var) -> None
  2. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: int) -> None
  3. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: _kratos.Var, arg2: Tuple[str, int]) -> None
  4. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: int, arg2: Tuple[str, int]) -> None
kratos.initial(fn)
kratos.final(fn)
class kratos.Sequence
imply(self: _kratos.Sequence, arg0: _kratos.Var) → _kratos.Sequence
next(self: _kratos.Sequence) → _kratos.Sequence
wait(*args, **kwargs)

Overloaded function.

  1. wait(self: _kratos.Sequence, arg0: int) -> _kratos.Sequence
  2. wait(self: _kratos.Sequence, arg0: int, arg1: int) -> _kratos.Sequence
class kratos.TestBench(top_name: str = 'TOP')
add_always(fn, comment='', label='', sensitivity=None, fn_ln=None, unroll_for=False, ssa_transform=False, **kargs)
add_attribute(attr)
add_child(instance_name: str, generator: kratos.generator.Generator, comment='', python_only=False, **kargs)
add_child_generator(instance_name: str, generator: kratos.generator.Generator, comment='', python_only=False, **kargs)
add_code(fn, comment='', label='', sensitivity=None, fn_ln=None, unroll_for=False, ssa_transform=False, **kargs)
add_fsm(fsm_name: str, clk_name=None, reset_name=None, reset_high=True)
add_stmt(stmt, add_ln_info=True)
child_generator()
static clear_context()
static clear_context_hash()
clock(name, is_input=True)
clock_en(name, is_input=True)
classmethod clone(**kargs)
combinational()
classmethod create(**kargs)
debug
def_instance

The definition instance of this generator. It can be itself or the clone reference :return: definition instance

enum(name: str, values: Dict[str, int], width=None)
enum_var(name: str, def_: _kratos.Enum)
external

External module typically is used when importing external verilog files. If set from user, all the passes and code gen will skip this generator definition. :return: True if it’s an external generator

find_attribute(func)
static from_verilog(top_name: str, src_file: str, lib_files: List[str], port_mapping: Dict[str, _kratos.PortType])
static get_context()
get_marked_stmt(name)
get_stmt_by_index(index)
get_var(name)
initialize_clone()
input(name, width: Union[int, _kratos.Param, _kratos.Enum, _kratos.PackedStruct], port_type: _kratos.PortType = <PortType.Data: 0>, is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Port
instance_name

Instance name of a generator. It has to be unique within a parent generator. :return: the instance name of the generator

interface(interface, name, is_port: bool = False)
internal_generator
is_cloned
is_stub

If a generator is mark as a stub, most of the passes won’t touch it and it’s the user’s responsibility to keep track of it. Kratos will attempt to zero out the stub outputs. :return: True if it’s a stub

mark_stmt(name: str, stmt)
name

Generator name usually corresponds to the name of the module. However, if unification happens, its verilog name will change. :return: The name of the generator

output(name, width: Union[int, _kratos.Param, _kratos.Enum, _kratos.PackedStruct], port_type: _kratos.PortType = <PortType.Data: 0>, is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Port
param(name: str, width: int = 32, value=None, is_signed: bool = False, initial_value=None, is_raw_type: bool = False) → _kratos.Param
param_from_def(param: _kratos.Param, name=None)
parameter(name: str, width: int = 32, value=None, is_signed: bool = False, initial_value=None, is_raw_type: bool = False) → _kratos.Param
port(name: str, width: Union[int, _kratos.Param, _kratos.Enum], direction: _kratos.PortDirection, port_type: _kratos.PortType = <PortType.Data: 0>, is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Port
port_bundle(bundle_name, bundle: kratos.ports.PortBundle)
port_from_def(port: _kratos.Port, name='', check_param: bool = True)
property(property_name: str, seq)
reg_enable(var_name, var, en, clk=None)
reg_init(var_name, var, clk=None, reset=None, init_value=0)
reg_next(var_name, var, clk=None)
remove_child_generator(generator)
remove_port(port_name)
remove_stmt(stmt)
remove_var(var_name)
replace(child_name: str, new_child: kratos.generator.Generator)
reset(name, is_input=True, is_async=True, active_high=None)
sequential(*sensitivity_list)
stmts_count
var(name: str, width: Union[int, _kratos.Param, _kratos.Enum, _kratos.PackedStruct], is_signed: bool = False, size: Union[int, List[T], Tuple] = 1, packed: bool = False, explicit_array: bool = False) → _kratos.Var
var_from_def(var: _kratos.Var, name)
var_packed(name: str, struct_packed: _kratos.PortPackedStruct)
wire(var_to, var_from, attributes: Union[List[_kratos.passes.Attribute], _kratos.passes.Attribute] = None, comment='', locals_=None, fn_ln=None, additional_frame=0, no_fn_ln=False)
kratos.assert_(expr)
kratos.delay(num, stmt, lhs=True)
kratos.enable_runtime_debug(generator: kratos.generator.Generator)
kratos.enum(name, definition, width=None)
kratos.clear_context()
kratos.always_comb(fn)
kratos.always_ff(*sensitivity)
kratos.always_latch(fn)
kratos.has_enum(name)
kratos.always(fn)
class kratos.CombinationalCodeBlock(generator, debug_frame_depth: int = 4, general_purpose: bool = False)
add_attribute(attr)
add_stmt(stmt, add_fn_ln: bool = True, depth=2)
if_(predicate: _kratos.Var) → kratos.stmts.IfStmt
remove_stmt(stmt)
stmt()
switch_(predicate: _kratos.Var) → kratos.stmts.SwitchStmt
class kratos.SequentialCodeBlock(generator, sensitivity_list, debug_frame_depth: int = 4)
add_attribute(attr)
add_stmt(stmt, add_fn_ln: bool = True, depth=2)
if_(predicate: _kratos.Var) → kratos.stmts.IfStmt
remove_stmt(stmt)
stmt()
switch_(predicate: _kratos.Var) → kratos.stmts.SwitchStmt
class kratos.SwitchStmt(predicate: _kratos.Var)
add_scope_variable(name, value, is_var=False, override=False)
case_(cond: _kratos.Var, *args)
stmt()
class kratos.PackedStruct
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.PackedStruct, arg0: str, arg1: int) -> None
  2. add_attribute(self: _kratos.PackedStruct, arg0: str, arg1: int, arg2: bool) -> None
  3. add_attribute(self: _kratos.PackedStruct, arg0: str, arg1: _kratos.PackedStruct) -> None
attributes
external
struct_name
class kratos.Port
active_high
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
connected(self: _kratos.Port) → bool
connected_from(self: _kratos.Port) → Set[_kratos.Port]
connected_to(self: _kratos.Port) → Set[_kratos.Port]
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
port_direction
port_type
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class kratos.Var
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class kratos.IfStmt(predicate: _kratos.Var)
add_fn_ln(info)
add_scope_variable(name, value, is_var=False, override=False)
else_(*args)
else_body()
stmt()
then_(*args)
then_body()
class kratos.AssignmentType

Members:

Blocking

NonBlocking

Undefined

Blocking = <AssignmentType.Blocking: 0>
NonBlocking = <AssignmentType.NonBlocking: 1>
Undefined = <AssignmentType.Undefined: 2>
name
value
kratos.if_(predicate: _kratos.Var)
kratos.switch_(predicate: _kratos.Var)
class kratos.Attribute
static create(arg0: str) → _kratos.passes.Attribute
get(self: _kratos.passes.Attribute) → object
type_str
value_str
class kratos.PortBundle(debug=False)
clock(name, is_input=True)
flip()
input(name, width, is_signed=False, size=1, port_type=<PortType.Data: 0>)
output(name, width, is_signed=False, size=1, port_type=<PortType.Data: 0>)
reset(name, is_input=True)
class kratos.DebugDataBase
save_database(*args, **kwargs)

Overloaded function.

  1. save_database(self: _kratos.DebugDataBase, filename: str, override: bool) -> None
  2. save_database(self: _kratos.DebugDataBase, filename: str) -> None
set_break_points(self: _kratos.DebugDataBase, arg: _kratos.Generator) → None
set_variable_mapping(*args, **kwargs)

Overloaded function.

  1. set_variable_mapping(self: _kratos.DebugDataBase, mapping: Dict[_kratos.Generator, Dict[str, _kratos.Var]]) -> None
  2. set_variable_mapping(self: _kratos.DebugDataBase, mapping: Dict[_kratos.Generator, Dict[str, str]]) -> None
kratos.add_scope_context(stmt, _locals)
kratos.set_global_debug(value: bool)
class kratos.Interface
clock(self: _kratos.Interface, arg0: str) → str
has_port(self: _kratos.Interface, arg0: str) → bool
has_var(self: _kratos.Interface, arg0: str) → bool
input(self: _kratos.Interface, arg0: str, arg1: int, arg2: int) → str
modport(self: _kratos.Interface, arg0: str) → kratos::InterfaceModPortDefinition
output(self: _kratos.Interface, arg0: str, arg1: int, arg2: int) → str
port(*args, **kwargs)

Overloaded function.

  1. port(self: _kratos.Interface, arg0: str, arg1: int, arg2: int, arg3: _kratos.PortDirection) -> str
  2. port(self: _kratos.Interface, arg0: str, arg1: int, arg2: List[int], arg3: _kratos.PortDirection) -> str
  3. port(self: _kratos.Interface, arg0: str, arg1: int, arg2: List[int], arg3: _kratos.PortDirection, arg4: _kratos.PortType) -> str
reset(self: _kratos.Interface, arg0: str) → str
var(*args, **kwargs)

Overloaded function.

  1. var(self: _kratos.Interface, arg0: str, arg1: int, arg2: int) -> str
  2. var(self: _kratos.Interface, arg0: str, arg1: int, arg2: List[int]) -> str
  3. var(self: _kratos.Interface, arg0: str, arg1: int) -> str
class kratos.VarSlice
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
high
is_packed
low
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
parent_var
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sliced_by_var
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class kratos.VarVarSlice
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
high
is_packed
low
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
parent_var
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
slice_var
sliced_by_var
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class kratos.ParamType

Members:

RawType

Parameter

Enum

Integral

Enum = <ParamType.Enum: 2>
Integral = <ParamType.Integral: 0>
Parameter = <ParamType.Parameter: 1>
RawType = <ParamType.RawType: 3>
name
value
class kratos.Event
class kratos.Transaction
kratos.clog2(x: Union[int, _kratos.Var]) → Union[int, _kratos.Var]
kratos.reduce_add(*args)
kratos.reduce_and(*args)
kratos.reduce_mul(*args)
kratos.reduce_or(*args)
kratos.concat(*args)
kratos.ext(var, target_width)
kratos.comment(comment_str)
kratos.signed(var)
kratos.unsigned(var)
kratos.create_stub(generator, filename='')
kratos.resize(var, target_width)
class kratos.EventEdgeType

Members:

Posedge

Negedge

Negedge = <EventEdgeType.Negedge: 1>
Posedge = <EventEdgeType.Posedge: 0>
name
value
kratos.mux(cond, left, right)
kratos.ternary(cond, left, right)
class _kratos.AssertPropertyStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
property(self: _kratos.AssertPropertyStmt) → kratos::Property
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.AssertValueStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
value(self: _kratos.AssertValueStmt) → _kratos.Var
verilog_ln
class _kratos.AssignStmt

Assignment statement

add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
assign_type(self: _kratos.AssignStmt) → _kratos.AssignmentType
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
delay
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
has_delay
left
right
scope_context
set_assign_type(self: _kratos.AssignStmt, arg0: _kratos.AssignmentType) → None
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.AssignmentType

Members:

Blocking

NonBlocking

Undefined

Blocking = <AssignmentType.Blocking: 0>
NonBlocking = <AssignmentType.NonBlocking: 1>
Undefined = <AssignmentType.Undefined: 2>
name
value
class _kratos.AuxiliaryStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
aux(self: _kratos.AuxiliaryStmt) → _kratos.AuxiliaryType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.AuxiliaryType

Members:

Event

Event = <AuxiliaryType.Event: 0>
name
value
class _kratos.BreakStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.BuiltInFunctionStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
get_port(self: _kratos.FunctionStmtBlock, arg0: str) → _kratos.Port
has_attribute(self: _kratos.Stmt, arg0: str) → bool
input(self: _kratos.FunctionStmtBlock, arg0: str, arg1: int, arg2: bool) → _kratos.Port
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
return_stmt(self: _kratos.FunctionStmtBlock, arg0: _kratos.Var) → _kratos.ReturnStmt
return_width(self: _kratos.BuiltInFunctionStmtBlock) → int
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
set_port_ordering(*args, **kwargs)

Overloaded function.

  1. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[str, int]) -> None
  2. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[int, str]) -> None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.CombinationalStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
general_purpose
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.CommentStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.ConditionalExpr
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.Const
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
const_generator() → kratos::Generator
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_bignum
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
set_value(self: _kratos.Const, arg0: int) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
value(self: _kratos.Const) → int
verilog_ln
width
class _kratos.Context
add(self: _kratos.Context, internal_generator: kratos::Generator) → None
change_generator_name(self: _kratos.Context, internal_generator: kratos::Generator, new_name: str) → None
clear(self: _kratos.Context) → None
clear_hash(self: _kratos.Context) → None
empty_generator(self: _kratos.Context) → kratos::Generator
enum(self: _kratos.Context, enum_name: str, definition: Dict[str, int], width: int) → kratos::Enum
generator(self: _kratos.Context, arg0: str) → kratos::Generator
get_generators_by_name(self: _kratos.Context, name: str) → Set[kratos::Generator]
get_hash(self: _kratos.Context, internal_generator: kratos::Generator) → int
has_enum(self: _kratos.Context, arg0: str) → bool
has_hash(self: _kratos.Context, internal_generator: kratos::Generator) → bool
hash_table_size(self: _kratos.Context) → int
testbench(self: _kratos.Context, arg0: str) → kratos::TestBench
track_generated
class _kratos.DPIFunctionStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
get_port(self: _kratos.FunctionStmtBlock, arg0: str) → _kratos.Port
has_attribute(self: _kratos.Stmt, arg0: str) → bool
input(self: _kratos.DPIFunctionStmtBlock, arg0: str, arg1: int, arg2: bool) → _kratos.Port
is_context(self: _kratos.DPIFunctionStmtBlock) → bool
is_pure(self: _kratos.DPIFunctionStmtBlock) → bool
output(self: _kratos.DPIFunctionStmtBlock, arg0: str, arg1: int, arg2: bool) → _kratos.Port
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
return_stmt(self: _kratos.FunctionStmtBlock, arg0: _kratos.Var) → _kratos.ReturnStmt
scope_context
set_is_context(self: _kratos.DPIFunctionStmtBlock, arg0: bool) → None
set_is_pure(self: _kratos.DPIFunctionStmtBlock, arg0: bool) → None
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
set_port_ordering(*args, **kwargs)

Overloaded function.

  1. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[str, int]) -> None
  2. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[int, str]) -> None
set_return_width(self: _kratos.DPIFunctionStmtBlock, arg0: int) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.DebugDataBase
save_database(*args, **kwargs)

Overloaded function.

  1. save_database(self: _kratos.DebugDataBase, filename: str, override: bool) -> None
  2. save_database(self: _kratos.DebugDataBase, filename: str) -> None
set_break_points(self: _kratos.DebugDataBase, arg: _kratos.Generator) → None
set_variable_mapping(*args, **kwargs)

Overloaded function.

  1. set_variable_mapping(self: _kratos.DebugDataBase, mapping: Dict[_kratos.Generator, Dict[str, _kratos.Var]]) -> None
  2. set_variable_mapping(self: _kratos.DebugDataBase, mapping: Dict[_kratos.Generator, Dict[str, str]]) -> None
class _kratos.DelaySide

Members:

Left

Right

Left = <DelaySide.Left: 0>
Right = <DelaySide.Right: 1>
name
value
class _kratos.Enum
external
name
class _kratos.EnumConst
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
const_generator() → kratos::Generator
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_bignum
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
set_value(self: _kratos.Const, arg0: int) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
value(self: _kratos.Const) → int
verilog_ln
width
class _kratos.EnumPort
active_high
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
connected(self: _kratos.Port) → bool
connected_from(self: _kratos.Port) → Set[_kratos.Port]
connected_to(self: _kratos.Port) → Set[_kratos.Port]
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
port_direction
port_type
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.EnumVar
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
enum_type(self: _kratos.EnumVar) → kratos::Enum
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.Event
class _kratos.EventActionType

Members:

None_

Start

End

End = <EventActionType.End: 2>
None_ = <EventActionType.None_: 0>
Start = <EventActionType.Start: 1>
name
value
class _kratos.EventControl
delay
delay_side
edge
class _kratos.EventDelayStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
aux(self: _kratos.AuxiliaryStmt) → _kratos.AuxiliaryType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
event
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.EventEdgeType

Members:

Posedge

Negedge

Negedge = <EventEdgeType.Negedge: 1>
Posedge = <EventEdgeType.Posedge: 0>
name
value
class _kratos.EventInfo
combinational
fields
name
stmt
transaction
type
class _kratos.EventTracingStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
aux(self: _kratos.AuxiliaryStmt) → _kratos.AuxiliaryType
belongs(*args, **kwargs)

Overloaded function.

  1. belongs(self: _kratos.EventTracingStmt, arg0: str) -> _kratos.EventTracingStmt
  2. belongs(self: _kratos.EventTracingStmt, arg0: kratos::Transaction) -> _kratos.EventTracingStmt
  3. belongs(self: _kratos.EventTracingStmt, arg0: kratos::Transaction, arg1: str, arg2: int) -> _kratos.EventTracingStmt
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
match_values
matches(*args, **kwargs)

Overloaded function.

  1. matches(self: _kratos.EventTracingStmt, arg0: str, arg1: _kratos.Var) -> _kratos.EventTracingStmt
  2. matches(self: _kratos.EventTracingStmt, **kwargs) -> _kratos.EventTracingStmt
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
starts(*args, **kwargs)

Overloaded function.

  1. starts(self: _kratos.EventTracingStmt) -> _kratos.EventTracingStmt
  2. starts(self: _kratos.EventTracingStmt, arg0: str) -> _kratos.EventTracingStmt
terminates(*args, **kwargs)

Overloaded function.

  1. terminates(self: _kratos.EventTracingStmt) -> _kratos.EventTracingStmt
  2. terminates(self: _kratos.EventTracingStmt, arg0: str) -> _kratos.EventTracingStmt
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.Expr
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.FSM
add_child_fsm(self: _kratos.FSM, arg0: _kratos.FSM) → None
add_state(*args, **kwargs)

Overloaded function.

  1. add_state(self: _kratos.FSM, arg0: str) -> kratos::FSMState
  2. add_state(self: _kratos.FSM, arg0: str, arg1: Tuple[str, int]) -> kratos::FSMState
current_state
dot_graph(*args, **kwargs)

Overloaded function.

  1. dot_graph(self: _kratos.FSM) -> str
  2. dot_graph(self: _kratos.FSM, arg0: str) -> None
fsm_name(self: _kratos.FSM) → str
get_all_child_fsm(self: _kratos.FSM) → List[_kratos.FSM]
get_state(self: _kratos.FSM, arg0: str) → kratos::FSMState
is_moore(self: _kratos.FSM) → bool
output(*args, **kwargs)

Overloaded function.

  1. output(self: _kratos.FSM, arg0: str) -> None
  2. output(self: _kratos.FSM, arg0: _kratos.Var) -> None
  3. output(self: _kratos.FSM, arg0: _kratos.Var, arg1: _kratos.Var) -> None
  4. output(self: _kratos.FSM, arg0: str, arg1: _kratos.Var) -> None
output_table(*args, **kwargs)

Overloaded function.

  1. output_table(self: _kratos.FSM) -> str
  2. output_table(self: _kratos.FSM, arg0: str) -> None
outputs(self: _kratos.FSM) → Dict[_kratos.Var, _kratos.Var]
realize(self: _kratos.FSM) → None
set_moore(self: _kratos.FSM, arg0: bool) → None
set_reset_high(self: _kratos.FSM, arg0: bool) → None
set_start_state(*args, **kwargs)

Overloaded function.

  1. set_start_state(self: _kratos.FSM, arg0: str) -> None
  2. set_start_state(self: _kratos.FSM, arg0: kratos::FSMState) -> None
  3. set_start_state(self: _kratos.FSM, arg0: str, arg1: Tuple[str, int]) -> None
  4. set_start_state(self: _kratos.FSM, arg0: kratos::FSMState, arg1: Tuple[str, int]) -> None
class _kratos.FSMState
name
next(*args, **kwargs)

Overloaded function.

  1. next(self: _kratos.FSMState, arg0: _kratos.FSMState, arg1: _kratos.Var) -> None
  2. next(self: _kratos.FSMState, arg0: _kratos.FSMState, arg1: _kratos.Var, arg2: Tuple[str, int]) -> None
output(*args, **kwargs)

Overloaded function.

  1. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: _kratos.Var) -> None
  2. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: int) -> None
  3. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: _kratos.Var, arg2: Tuple[str, int]) -> None
  4. output(self: _kratos.FSMState, arg0: _kratos.Var, arg1: int, arg2: Tuple[str, int]) -> None
class _kratos.FinalStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.ForStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.ForStmt, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.ForStmt, arg0: _kratos.FunctionCallVar) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
get_iter_var(self: _kratos.ForStmt) → _kratos.IterVar
get_loop_body(self: _kratos.ForStmt) → _kratos.ScopedStmtBlock
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.FunctionCallVar
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.FunctionStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
get_port(self: _kratos.FunctionStmtBlock, arg0: str) → _kratos.Port
has_attribute(self: _kratos.Stmt, arg0: str) → bool
input(self: _kratos.FunctionStmtBlock, arg0: str, arg1: int, arg2: bool) → _kratos.Port
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
return_stmt(self: _kratos.FunctionStmtBlock, arg0: _kratos.Var) → _kratos.ReturnStmt
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
set_port_ordering(*args, **kwargs)

Overloaded function.

  1. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[str, int]) -> None
  2. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[int, str]) -> None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.Generator
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Generator, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Generator, arg0: str) -> None
add_bundle_port_def(*args, **kwargs)

Overloaded function.

  1. add_bundle_port_def(self: _kratos.Generator, arg0: str, arg1: kratos::PortBundleDefinition, arg2: Tuple[str, int]) -> kratos::PortBundleRef
  2. add_bundle_port_def(self: _kratos.Generator, arg0: str, arg1: kratos::PortBundleDefinition) -> kratos::PortBundleRef
add_child_generator(*args, **kwargs)

Overloaded function.

  1. add_child_generator(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator) -> None
  2. add_child_generator(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator, arg2: Tuple[str, int]) -> None
add_fn_ln(self: _kratos.Generator, arg0: Tuple[str, int]) → None
add_named_block(self: _kratos.Generator, arg0: str, arg1: kratos::StmtBlock) → None
add_raw_import(self: _kratos.Generator, arg0: str) → None
add_stmt(self: _kratos.Generator, arg0: kratos::Stmt) → None
attributes
builtin_function(self: _kratos.Generator, arg0: str) → kratos::BuiltInFunctionStmtBlock
call(*args, **kwargs)

Overloaded function.

  1. call(self: _kratos.Generator, arg0: str, arg1: Dict[str, _kratos.Var]) -> _kratos.FunctionCallVar
  2. call(self: _kratos.Generator, arg0: str, arg1: Dict[str, _kratos.Var], arg2: bool) -> _kratos.FunctionCallVar
  3. call(self: _kratos.Generator, arg0: str, arg1: List[_kratos.Var]) -> _kratos.FunctionCallVar
clone(self: _kratos.Generator) → _kratos.Generator
combinational(self: _kratos.Generator) → kratos::CombinationalStmtBlock
context(self: _kratos.Generator) → _kratos.Context
copy_over_missing_ports(self: _kratos.Generator, arg0: _kratos.Generator) → None
correct_wire_direction(*args, **kwargs)

Overloaded function.

  1. correct_wire_direction(self: _kratos.Generator, arg0: _kratos.Var, arg1: _kratos.Var) -> Tuple[bool, bool]
  2. correct_wire_direction(self: _kratos.Generator, arg0: _kratos.Var, arg1: int) -> Tuple[bool, bool]
  3. correct_wire_direction(self: _kratos.Generator, arg0: int, arg1: _kratos.Var) -> Tuple[bool, bool]
debug
def_instance
dpi_function(self: _kratos.Generator, arg0: str) → kratos::DPIFunctionStmtBlock
enum(self: _kratos.Generator, arg0: str, arg1: Dict[str, int], arg2: int) → kratos::Enum
enum_var(self: _kratos.Generator, arg0: str, arg1: kratos::Enum) → _kratos.EnumVar
external(self: _kratos.Generator) → bool
external_filename(self: _kratos.Generator) → str
final(self: _kratos.Generator) → kratos::FinalStmtBlock
find_attribute(self: _kratos.passes.IRNode, arg0: Callable[[kratos::Attribute], bool]) → List[kratos::Attribute]
from_verilog(self: _kratos.Context, arg0: str, arg1: str, arg2: List[str], arg3: Dict[str, _kratos.PortType]) → _kratos.Generator
fsm(*args, **kwargs)

Overloaded function.

  1. fsm(self: _kratos.Generator, arg0: str) -> kratos::FSM
  2. fsm(self: _kratos.Generator, arg0: str, arg1: _kratos.Var, arg2: _kratos.Var) -> kratos::FSM
function(self: _kratos.Generator, arg0: str) → kratos::FunctionStmtBlock
get_attributes(self: _kratos.passes.IRNode) → List[kratos::Attribute]
get_bundle_ref(self: _kratos.Generator, arg0: str) → kratos::PortBundleRef
get_child_generator_size(self: _kratos.Generator) → int
get_child_generators(self: _kratos.Generator) → List[_kratos.Generator]
get_function(self: _kratos.Generator, arg0: str) → kratos::FunctionStmtBlock
get_interface(self: _kratos.Generator, arg0: str) → kratos::InterfaceRef
get_named_block(self: _kratos.Generator, arg0: str) → kratos::StmtBlock
get_param(self: _kratos.Generator, arg0: str) → _kratos.Param
get_params(self: _kratos.Generator) → Dict[str, _kratos.Param]
get_port(self: _kratos.Generator, arg0: str) → _kratos.Port
get_port_names(self: _kratos.Generator) → Set[str]
get_ports(self: _kratos.Generator, arg0: _kratos.PortType) → List[str]
get_stmt(self: _kratos.Generator, arg0: int) → kratos::Stmt
get_unique_variable_name(self: _kratos.Generator, arg0: str, arg1: str) → str
get_var(self: _kratos.Generator, arg0: str) → _kratos.Var
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Generator) -> str
  2. handle_name(self: _kratos.Generator, arg0: bool) -> str
has_attribute(self: _kratos.passes.IRNode, arg0: str) → bool
has_child_generator(*args, **kwargs)

Overloaded function.

  1. has_child_generator(self: _kratos.Generator, arg0: _kratos.Generator) -> bool
  2. has_child_generator(self: _kratos.Generator, arg0: str) -> bool
has_function(self: _kratos.Generator, arg0: str) → bool
has_interface(self: _kratos.Generator, arg0: str) → bool
has_named_block(self: _kratos.Generator, arg0: str) → bool
has_port(self: _kratos.Generator, arg0: str) → bool
has_port_bundle(self: _kratos.Generator, arg0: str) → bool
has_var(self: _kratos.Generator, arg0: str) → bool
initial(self: _kratos.Generator) → kratos::InitialStmtBlock
instance_name
interface(*args, **kwargs)

Overloaded function.

  1. interface(self: _kratos.Generator, arg0: kratos::InterfaceDefinition, arg1: str, arg2: bool) -> kratos::InterfaceRef
  2. interface(self: _kratos.Generator, arg0: kratos::InterfaceModPortDefinition, arg1: str, arg2: bool) -> kratos::InterfaceRef
is_cloned
is_stub(self: _kratos.Generator) → bool
latch(self: _kratos.Generator) → kratos::LatchStmtBlock
name
param_iter(self: _kratos.Generator) → Iterator
parameter(*args, **kwargs)

Overloaded function.

  1. parameter(self: _kratos.Generator, arg0: str) -> _kratos.Param
  2. parameter(self: _kratos.Generator, arg0: str, arg1: int, arg2: bool) -> _kratos.Param
  3. parameter(self: _kratos.Generator, arg0: _kratos.Param, arg1: Optional[str]) -> _kratos.Param
  4. parameter(self: _kratos.Generator, arg0: str, arg1: kratos::Enum) -> _kratos.Param
parent_generator(self: _kratos.Generator) → _kratos.Generator
port(*args, **kwargs)

Overloaded function.

  1. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: int) -> _kratos.Port
  2. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: int, arg3: int, arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  3. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: int, arg3: List[int], arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  4. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.Var, arg3: int, arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  5. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.Var, arg3: List[int], arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  6. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: kratos::Enum) -> _kratos.EnumPort
  7. port(self: _kratos.Generator, arg0: _kratos.EnumPort, arg1: bool) -> _kratos.Port
  8. port(self: _kratos.Generator, arg0: _kratos.EnumPort, arg1: str, arg2: bool) -> _kratos.Port
  9. port(self: _kratos.Generator, arg0: _kratos.Port) -> _kratos.Port
  10. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: str) -> _kratos.Port
  11. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: str, arg2: bool) -> _kratos.Port
  12. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: bool) -> _kratos.Port
  13. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: str, arg2: bool) -> _kratos.Port
  14. port(self: _kratos.Generator, arg0: _kratos.PortPackedStruct, arg1: bool) -> _kratos.Port
  15. port(self: _kratos.Generator, arg0: _kratos.PortPackedStruct, arg1: str, arg2: bool) -> _kratos.Port
port_packed(*args, **kwargs)

Overloaded function.

  1. port_packed(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.PackedStruct) -> _kratos.PortPackedStruct
  2. port_packed(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.PackedStruct, arg3: int) -> _kratos.PortPackedStruct
  3. port_packed(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.PackedStruct, arg3: List[int]) -> _kratos.PortPackedStruct
ports_iter(self: _kratos.Generator) → Iterator
property(self: _kratos.Generator, arg0: str, arg1: kratos::Sequence) → kratos::Property
raw_package_imports
remove_child_generator(self: _kratos.Generator, arg0: _kratos.Generator) → None
remove_port(self: _kratos.Generator, arg0: str) → None
remove_stmt(self: _kratos.Generator, arg0: kratos::Stmt) → None
remove_var(self: _kratos.Generator, arg0: str) → None
replace(*args, **kwargs)

Overloaded function.

  1. replace(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator) -> None
  2. replace(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator, arg2: Tuple[str, int]) -> None
sequential(self: _kratos.Generator) → kratos::SequentialStmtBlock
set_child_comment(self: _kratos.Generator, arg0: str, arg1: str) → None
set_clone_ref(self: _kratos.Generator, arg0: _kratos.Generator) → None
set_external(self: _kratos.Generator, arg0: bool) → None
set_is_stub(self: _kratos.Generator, arg0: bool) → None
stmts_count(self: _kratos.Generator) → int
task(self: _kratos.Generator, arg0: str) → kratos::TaskStmtBlock
unwire(self: _kratos.Generator, arg0: _kratos.Var, arg1: _kratos.Var) → None
var(*args, **kwargs)

Overloaded function.

  1. var(self: _kratos.Generator, arg0: str, arg1: int) -> _kratos.Var
  2. var(self: _kratos.Generator, arg0: str, arg1: int, arg2: int, arg3: bool) -> _kratos.Var
  3. var(self: _kratos.Generator, arg0: str, arg1: int, arg2: List[int]) -> _kratos.Var
  4. var(self: _kratos.Generator, arg0: str, arg1: int, arg2: List[int], arg3: bool) -> _kratos.Var
  5. var(self: _kratos.Generator, arg0: str, arg1: _kratos.Var, arg2: int, arg3: bool) -> _kratos.Var
  6. var(self: _kratos.Generator, arg0: str, arg1: _kratos.Var, arg2: List[int], arg3: bool) -> _kratos.Var
  7. var(self: _kratos.Generator, arg0: _kratos.Var, arg1: str) -> _kratos.Var
var_packed(*args, **kwargs)

Overloaded function.

  1. var_packed(self: _kratos.Generator, arg0: str, arg1: _kratos.PackedStruct) -> _kratos.VarPackedStruct
  2. var_packed(self: _kratos.Generator, arg0: str, arg1: _kratos.PackedStruct, arg2: int) -> _kratos.VarPackedStruct
  3. var_packed(self: _kratos.Generator, arg0: str, arg1: _kratos.PackedStruct, arg2: List[int]) -> _kratos.VarPackedStruct
vars(self: _kratos.Generator) → Dict[str, _kratos.Var]
vars_iter(self: _kratos.Generator) → Iterator
verilog_fn
verilog_ln
wire(self: _kratos.Generator, arg0: _kratos.Var, arg1: _kratos.Var) → None
wire_interface(self: _kratos.Generator, arg0: kratos::InterfaceRef, arg1: kratos::InterfaceRef) → None
wire_ports(self: _kratos.Generator, arg0: _kratos.Port, arg1: _kratos.Port) → kratos::Stmt
class _kratos.HashStrategy

Members:

SequentialHash

ParallelHash

ParallelHash = <HashStrategy.ParallelHash: 1>
SequentialHash = <HashStrategy.SequentialHash: 0>
name
value
class _kratos.IRNodeKind

Members:

GeneratorKind

VarKind

StmtKind

GeneratorKind = <IRNodeKind.GeneratorKind: 0>
StmtKind = <IRNodeKind.StmtKind: 2>
VarKind = <IRNodeKind.VarKind: 1>
name
value
class _kratos.IfStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_else_stmt(self: _kratos.IfStmt, arg0: _kratos.Stmt) → None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_then_stmt(self: _kratos.IfStmt, arg0: _kratos.Stmt) → None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
else_
else_body(self: _kratos.IfStmt) → kratos::ScopedStmtBlock
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
predicate(self: _kratos.IfStmt) → _kratos.Var
remove_else_stmt(self: _kratos.IfStmt, arg0: _kratos.Stmt) → None
remove_then_stmt(self: _kratos.IfStmt, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
then_
then_body(self: _kratos.IfStmt) → kratos::ScopedStmtBlock
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.InitialStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.Interface
clock(self: _kratos.Interface, arg0: str) → str
has_port(self: _kratos.Interface, arg0: str) → bool
has_var(self: _kratos.Interface, arg0: str) → bool
input(self: _kratos.Interface, arg0: str, arg1: int, arg2: int) → str
modport(self: _kratos.Interface, arg0: str) → kratos::InterfaceModPortDefinition
output(self: _kratos.Interface, arg0: str, arg1: int, arg2: int) → str
port(*args, **kwargs)

Overloaded function.

  1. port(self: _kratos.Interface, arg0: str, arg1: int, arg2: int, arg3: _kratos.PortDirection) -> str
  2. port(self: _kratos.Interface, arg0: str, arg1: int, arg2: List[int], arg3: _kratos.PortDirection) -> str
  3. port(self: _kratos.Interface, arg0: str, arg1: int, arg2: List[int], arg3: _kratos.PortDirection, arg4: _kratos.PortType) -> str
reset(self: _kratos.Interface, arg0: str) → str
var(*args, **kwargs)

Overloaded function.

  1. var(self: _kratos.Interface, arg0: str, arg1: int, arg2: int) -> str
  2. var(self: _kratos.Interface, arg0: str, arg1: int, arg2: List[int]) -> str
  3. var(self: _kratos.Interface, arg0: str, arg1: int) -> str
class _kratos.InterfaceRef
get_modport_ref(self: _kratos.InterfaceRef, arg0: str) → _kratos.InterfaceRef
has_modport(self: _kratos.InterfaceRef, arg0: str) → bool
has_port(self: _kratos.InterfaceRef, arg0: str) → bool
has_var(self: _kratos.InterfaceRef, arg0: str) → bool
port(self: _kratos.InterfaceRef, arg0: str) → _kratos.Port
var(self: _kratos.InterfaceRef, arg0: str) → _kratos.Var
class _kratos.IterVar
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.LatchStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.ModPortInterface
set_input(self: _kratos.ModPortInterface, arg0: str) → None
set_output(self: _kratos.ModPortInterface, arg0: str) → None
class _kratos.ModuleInstantiationStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.PackedSlice
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.PackedStruct
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.PackedStruct, arg0: str, arg1: int) -> None
  2. add_attribute(self: _kratos.PackedStruct, arg0: str, arg1: int, arg2: bool) -> None
  3. add_attribute(self: _kratos.PackedStruct, arg0: str, arg1: _kratos.PackedStruct) -> None
attributes
external
struct_name
class _kratos.Param
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
const_generator() → kratos::Generator
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
initial_raw_str_value
initial_value
is_bignum
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
param_type
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
set_value(self: _kratos.Const, arg0: int) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
value
verilog_ln
width
class _kratos.ParamType

Members:

RawType

Parameter

Enum

Integral

Enum = <ParamType.Enum: 2>
Integral = <ParamType.Integral: 0>
Parameter = <ParamType.Parameter: 1>
RawType = <ParamType.RawType: 3>
name
value
class _kratos.Port
active_high
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
connected(self: _kratos.Port) → bool
connected_from(self: _kratos.Port) → Set[_kratos.Port]
connected_to(self: _kratos.Port) → Set[_kratos.Port]
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
port_direction
port_type
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.PortBundleDefinition
add_debug_info(self: _kratos.PortBundleDefinition, arg0: str, arg1: Tuple[str, int]) → None
add_definition(self: _kratos.PortBundleDefinition, arg0: str, arg1: int, arg2: int, arg3: bool, arg4: _kratos.PortDirection, arg5: _kratos.PortType) → None
definition(self: _kratos.PortBundleDefinition) → Dict[str, Tuple[int, int, bool, _kratos.PortDirection, _kratos.PortType]]
flip(self: _kratos.PortBundleDefinition) → _kratos.PortBundleDefinition
name
class _kratos.PortBundleRef
assign(self: _kratos.PortBundleRef, arg0: _kratos.PortBundleRef, arg1: _kratos.Generator, arg2: List[Tuple[str, int]]) → None
member_names(self: _kratos.PortBundleRef) → Set[str]
class _kratos.PortDirection

Members:

In

Out

InOut

In = <PortDirection.In: 0>
InOut = <PortDirection.InOut: 2>
Out = <PortDirection.Out: 1>
name
value
class _kratos.PortPackedStruct
active_high
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
connected(self: _kratos.Port) → bool
connected_from(self: _kratos.Port) → Set[_kratos.Port]
connected_to(self: _kratos.Port) → Set[_kratos.Port]
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
member_names(self: _kratos.PortPackedStruct) → Set[str]
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
port_direction
port_type
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.PortType

Members:

Clock

AsyncReset

ClockEnable

Data

Reset

AsyncReset = <PortType.AsyncReset: 2>
Clock = <PortType.Clock: 1>
ClockEnable = <PortType.ClockEnable: 4>
Data = <PortType.Data: 0>
Reset = <PortType.Reset: 3>
name
value
class _kratos.Property
action
edge(*args, **kwargs)

Overloaded function.

  1. edge(self: _kratos.Property, arg0: _kratos.EventEdgeType, arg1: _kratos.Var) -> None
  2. edge(self: _kratos.Property) -> _kratos.EventControl
property_name(self: _kratos.Property) → str
sequence(self: _kratos.Property) → _kratos.Sequence
class _kratos.PropertyAction

Members:

None

Cover

Assume

Assert

Assert = <PropertyAction.Assert: 8>
Assume = <PropertyAction.Assume: 4>
Cover = <PropertyAction.Cover: 2>
None = <PropertyAction.None: 0>
name
value
class _kratos.RawStringStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.ReturnStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.ScopedStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.Sequence
imply(self: _kratos.Sequence, arg0: _kratos.Var) → _kratos.Sequence
next(self: _kratos.Sequence) → _kratos.Sequence
wait(*args, **kwargs)

Overloaded function.

  1. wait(self: _kratos.Sequence, arg0: int) -> _kratos.Sequence
  2. wait(self: _kratos.Sequence, arg0: int, arg1: int) -> _kratos.Sequence
class _kratos.SequentialStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_condition(self: _kratos.SequentialStmtBlock, arg0: Tuple[_kratos.EventEdgeType, _kratos.Var]) → None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
get_event_controls(self: _kratos.SequentialStmtBlock) → List[kratos::EventControl]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.Simulator
get(self: _kratos.Simulator, arg0: _kratos.Var) → Optional[int]
get_array(self: _kratos.Simulator, arg0: _kratos.Var) → Optional[List[int]]
set(*args, **kwargs)

Overloaded function.

  1. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[int], arg2: bool) -> None
  2. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[List[int]], arg2: bool) -> None
  3. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[int], arg2: bool) -> None
  4. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[List[int]], arg2: bool) -> None
  5. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[int]) -> None
  6. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[List[int]]) -> None
  7. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[int]) -> None
  8. set(self: _kratos.Simulator, arg0: _kratos.Var, arg1: Optional[List[int]]) -> None
class _kratos.StatementBlockType

Members:

Combinational

Sequential

Initial

Latch

Final

Combinational = <StatementBlockType.Combinational: 0>
Final = <StatementBlockType.Final: 6>
Initial = <StatementBlockType.Initial: 4>
Latch = <StatementBlockType.Latch: 5>
Sequential = <StatementBlockType.Sequential: 1>
name
value
class _kratos.StatementType

Members:

If

Switch

Assign

Block

ModuleInstantiation

Assign = <StatementType.Assign: 3>
Block = <StatementType.Block: 4>
If = <StatementType.If: 0>
ModuleInstantiation = <StatementType.ModuleInstantiation: 5>
Switch = <StatementType.Switch: 1>
name
value
class _kratos.Stmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
attributes
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.StmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.SwitchStmt
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_switch_case(*args, **kwargs)

Overloaded function.

  1. add_switch_case(self: _kratos.SwitchStmt, arg0: _kratos.Const, arg1: _kratos.Stmt) -> kratos::ScopedStmtBlock
  2. add_switch_case(self: _kratos.SwitchStmt, arg0: _kratos.Const, arg1: List[_kratos.Stmt]) -> kratos::ScopedStmtBlock
attributes
body(self: _kratos.SwitchStmt) → Dict[_kratos.Const, kratos::ScopedStmtBlock]
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
has_attribute(self: _kratos.Stmt, arg0: str) → bool
remove_switch_case(*args, **kwargs)

Overloaded function.

  1. remove_switch_case(self: _kratos.SwitchStmt, arg0: _kratos.Const) -> None
  2. remove_switch_case(self: _kratos.SwitchStmt, arg0: _kratos.Const, arg1: _kratos.Stmt) -> None
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
target(self: _kratos.SwitchStmt) → _kratos.Var
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.SystemVerilogCodeGenOptions
extract_debug_info
line_wrap
output_dir
package_name
unique_case
class _kratos.TaskStmtBlock
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Stmt, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Stmt, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Stmt, arg0: Tuple[str, int], arg1: bool) -> None
add_scope_variable(*args, **kwargs)

Overloaded function.

  1. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool, arg3: bool) -> None
  2. add_scope_variable(self: _kratos.Stmt, arg0: str, arg1: str, arg2: bool) -> None
add_stmt(*args, **kwargs)

Overloaded function.

  1. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) -> None
  2. add_stmt(self: _kratos.StmtBlock, arg0: _kratos.FunctionCallVar) -> None
attributes
block_type(self: _kratos.StmtBlock) → _kratos.StatementBlockType
clone(self: _kratos.Stmt) → _kratos.Stmt
comment
find_attribute(self: _kratos.Stmt, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
get_attributes(self: _kratos.Stmt) → List[_kratos.passes.Attribute]
get_port(self: _kratos.FunctionStmtBlock, arg0: str) → _kratos.Port
has_attribute(self: _kratos.Stmt, arg0: str) → bool
input(self: _kratos.FunctionStmtBlock, arg0: str, arg1: int, arg2: bool) → _kratos.Port
remove_stmt(self: _kratos.StmtBlock, arg0: _kratos.Stmt) → None
return_stmt(self: _kratos.FunctionStmtBlock, arg0: _kratos.Var) → _kratos.ReturnStmt
scope_context
set_parent(self: _kratos.Stmt, arg0: _kratos.passes.IRNode) → None
set_port_ordering(*args, **kwargs)

Overloaded function.

  1. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[str, int]) -> None
  2. set_port_ordering(self: _kratos.FunctionStmtBlock, arg0: Dict[int, str]) -> None
type(self: _kratos.Stmt) → _kratos.StatementType
verilog_ln
class _kratos.TestBench
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Generator, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Generator, arg0: str) -> None
add_bundle_port_def(*args, **kwargs)

Overloaded function.

  1. add_bundle_port_def(self: _kratos.Generator, arg0: str, arg1: kratos::PortBundleDefinition, arg2: Tuple[str, int]) -> kratos::PortBundleRef
  2. add_bundle_port_def(self: _kratos.Generator, arg0: str, arg1: kratos::PortBundleDefinition) -> kratos::PortBundleRef
add_child_generator(*args, **kwargs)

Overloaded function.

  1. add_child_generator(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator) -> None
  2. add_child_generator(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator, arg2: Tuple[str, int]) -> None
add_fn_ln(self: _kratos.Generator, arg0: Tuple[str, int]) → None
add_named_block(self: _kratos.Generator, arg0: str, arg1: kratos::StmtBlock) → None
add_raw_import(self: _kratos.Generator, arg0: str) → None
add_stmt(self: _kratos.Generator, arg0: kratos::Stmt) → None
attributes
builtin_function(self: _kratos.Generator, arg0: str) → kratos::BuiltInFunctionStmtBlock
call(*args, **kwargs)

Overloaded function.

  1. call(self: _kratos.Generator, arg0: str, arg1: Dict[str, _kratos.Var]) -> _kratos.FunctionCallVar
  2. call(self: _kratos.Generator, arg0: str, arg1: Dict[str, _kratos.Var], arg2: bool) -> _kratos.FunctionCallVar
  3. call(self: _kratos.Generator, arg0: str, arg1: List[_kratos.Var]) -> _kratos.FunctionCallVar
clone(self: _kratos.Generator) → _kratos.Generator
combinational(self: _kratos.Generator) → kratos::CombinationalStmtBlock
context(self: _kratos.Generator) → _kratos.Context
copy_over_missing_ports(self: _kratos.Generator, arg0: _kratos.Generator) → None
correct_wire_direction(*args, **kwargs)

Overloaded function.

  1. correct_wire_direction(self: _kratos.Generator, arg0: _kratos.Var, arg1: _kratos.Var) -> Tuple[bool, bool]
  2. correct_wire_direction(self: _kratos.Generator, arg0: _kratos.Var, arg1: int) -> Tuple[bool, bool]
  3. correct_wire_direction(self: _kratos.Generator, arg0: int, arg1: _kratos.Var) -> Tuple[bool, bool]
debug
def_instance
dpi_function(self: _kratos.Generator, arg0: str) → kratos::DPIFunctionStmtBlock
enum(self: _kratos.Generator, arg0: str, arg1: Dict[str, int], arg2: int) → kratos::Enum
enum_var(self: _kratos.Generator, arg0: str, arg1: kratos::Enum) → _kratos.EnumVar
external(self: _kratos.Generator) → bool
external_filename(self: _kratos.Generator) → str
final(self: _kratos.Generator) → kratos::FinalStmtBlock
find_attribute(self: _kratos.passes.IRNode, arg0: Callable[[kratos::Attribute], bool]) → List[kratos::Attribute]
from_verilog(self: _kratos.Context, arg0: str, arg1: str, arg2: List[str], arg3: Dict[str, _kratos.PortType]) → _kratos.Generator
fsm(*args, **kwargs)

Overloaded function.

  1. fsm(self: _kratos.Generator, arg0: str) -> kratos::FSM
  2. fsm(self: _kratos.Generator, arg0: str, arg1: _kratos.Var, arg2: _kratos.Var) -> kratos::FSM
function(self: _kratos.Generator, arg0: str) → kratos::FunctionStmtBlock
get_attributes(self: _kratos.passes.IRNode) → List[kratos::Attribute]
get_bundle_ref(self: _kratos.Generator, arg0: str) → kratos::PortBundleRef
get_child_generator_size(self: _kratos.Generator) → int
get_child_generators(self: _kratos.Generator) → List[_kratos.Generator]
get_function(self: _kratos.Generator, arg0: str) → kratos::FunctionStmtBlock
get_interface(self: _kratos.Generator, arg0: str) → kratos::InterfaceRef
get_named_block(self: _kratos.Generator, arg0: str) → kratos::StmtBlock
get_param(self: _kratos.Generator, arg0: str) → _kratos.Param
get_params(self: _kratos.Generator) → Dict[str, _kratos.Param]
get_port(self: _kratos.Generator, arg0: str) → _kratos.Port
get_port_names(self: _kratos.Generator) → Set[str]
get_ports(self: _kratos.Generator, arg0: _kratos.PortType) → List[str]
get_stmt(self: _kratos.Generator, arg0: int) → kratos::Stmt
get_unique_variable_name(self: _kratos.Generator, arg0: str, arg1: str) → str
get_var(self: _kratos.Generator, arg0: str) → _kratos.Var
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Generator) -> str
  2. handle_name(self: _kratos.Generator, arg0: bool) -> str
has_attribute(self: _kratos.passes.IRNode, arg0: str) → bool
has_child_generator(*args, **kwargs)

Overloaded function.

  1. has_child_generator(self: _kratos.Generator, arg0: _kratos.Generator) -> bool
  2. has_child_generator(self: _kratos.Generator, arg0: str) -> bool
has_function(self: _kratos.Generator, arg0: str) → bool
has_interface(self: _kratos.Generator, arg0: str) → bool
has_named_block(self: _kratos.Generator, arg0: str) → bool
has_port(self: _kratos.Generator, arg0: str) → bool
has_port_bundle(self: _kratos.Generator, arg0: str) → bool
has_var(self: _kratos.Generator, arg0: str) → bool
initial(self: _kratos.Generator) → kratos::InitialStmtBlock
instance_name
interface(*args, **kwargs)

Overloaded function.

  1. interface(self: _kratos.Generator, arg0: kratos::InterfaceDefinition, arg1: str, arg2: bool) -> kratos::InterfaceRef
  2. interface(self: _kratos.Generator, arg0: kratos::InterfaceModPortDefinition, arg1: str, arg2: bool) -> kratos::InterfaceRef
is_cloned
is_stub(self: _kratos.Generator) → bool
latch(self: _kratos.Generator) → kratos::LatchStmtBlock
name
param_iter(self: _kratos.Generator) → Iterator
parameter(*args, **kwargs)

Overloaded function.

  1. parameter(self: _kratos.Generator, arg0: str) -> _kratos.Param
  2. parameter(self: _kratos.Generator, arg0: str, arg1: int, arg2: bool) -> _kratos.Param
  3. parameter(self: _kratos.Generator, arg0: _kratos.Param, arg1: Optional[str]) -> _kratos.Param
  4. parameter(self: _kratos.Generator, arg0: str, arg1: kratos::Enum) -> _kratos.Param
parent_generator(self: _kratos.Generator) → _kratos.Generator
port(*args, **kwargs)

Overloaded function.

  1. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: int) -> _kratos.Port
  2. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: int, arg3: int, arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  3. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: int, arg3: List[int], arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  4. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.Var, arg3: int, arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  5. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.Var, arg3: List[int], arg4: _kratos.PortType, arg5: bool) -> _kratos.Port
  6. port(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: kratos::Enum) -> _kratos.EnumPort
  7. port(self: _kratos.Generator, arg0: _kratos.EnumPort, arg1: bool) -> _kratos.Port
  8. port(self: _kratos.Generator, arg0: _kratos.EnumPort, arg1: str, arg2: bool) -> _kratos.Port
  9. port(self: _kratos.Generator, arg0: _kratos.Port) -> _kratos.Port
  10. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: str) -> _kratos.Port
  11. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: str, arg2: bool) -> _kratos.Port
  12. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: bool) -> _kratos.Port
  13. port(self: _kratos.Generator, arg0: _kratos.Port, arg1: str, arg2: bool) -> _kratos.Port
  14. port(self: _kratos.Generator, arg0: _kratos.PortPackedStruct, arg1: bool) -> _kratos.Port
  15. port(self: _kratos.Generator, arg0: _kratos.PortPackedStruct, arg1: str, arg2: bool) -> _kratos.Port
port_packed(*args, **kwargs)

Overloaded function.

  1. port_packed(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.PackedStruct) -> _kratos.PortPackedStruct
  2. port_packed(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.PackedStruct, arg3: int) -> _kratos.PortPackedStruct
  3. port_packed(self: _kratos.Generator, arg0: _kratos.PortDirection, arg1: str, arg2: _kratos.PackedStruct, arg3: List[int]) -> _kratos.PortPackedStruct
ports_iter(self: _kratos.Generator) → Iterator
property(self: _kratos.Generator, arg0: str, arg1: kratos::Sequence) → kratos::Property
raw_package_imports
remove_child_generator(self: _kratos.Generator, arg0: _kratos.Generator) → None
remove_port(self: _kratos.Generator, arg0: str) → None
remove_stmt(self: _kratos.Generator, arg0: kratos::Stmt) → None
remove_var(self: _kratos.Generator, arg0: str) → None
replace(*args, **kwargs)

Overloaded function.

  1. replace(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator) -> None
  2. replace(self: _kratos.Generator, arg0: str, arg1: _kratos.Generator, arg2: Tuple[str, int]) -> None
sequential(self: _kratos.Generator) → kratos::SequentialStmtBlock
set_child_comment(self: _kratos.Generator, arg0: str, arg1: str) → None
set_clone_ref(self: _kratos.Generator, arg0: _kratos.Generator) → None
set_external(self: _kratos.Generator, arg0: bool) → None
set_is_stub(self: _kratos.Generator, arg0: bool) → None
stmts_count(self: _kratos.Generator) → int
task(self: _kratos.Generator, arg0: str) → kratos::TaskStmtBlock
unwire(self: _kratos.Generator, arg0: _kratos.Var, arg1: _kratos.Var) → None
var(*args, **kwargs)

Overloaded function.

  1. var(self: _kratos.Generator, arg0: str, arg1: int) -> _kratos.Var
  2. var(self: _kratos.Generator, arg0: str, arg1: int, arg2: int, arg3: bool) -> _kratos.Var
  3. var(self: _kratos.Generator, arg0: str, arg1: int, arg2: List[int]) -> _kratos.Var
  4. var(self: _kratos.Generator, arg0: str, arg1: int, arg2: List[int], arg3: bool) -> _kratos.Var
  5. var(self: _kratos.Generator, arg0: str, arg1: _kratos.Var, arg2: int, arg3: bool) -> _kratos.Var
  6. var(self: _kratos.Generator, arg0: str, arg1: _kratos.Var, arg2: List[int], arg3: bool) -> _kratos.Var
  7. var(self: _kratos.Generator, arg0: _kratos.Var, arg1: str) -> _kratos.Var
var_packed(*args, **kwargs)

Overloaded function.

  1. var_packed(self: _kratos.Generator, arg0: str, arg1: _kratos.PackedStruct) -> _kratos.VarPackedStruct
  2. var_packed(self: _kratos.Generator, arg0: str, arg1: _kratos.PackedStruct, arg2: int) -> _kratos.VarPackedStruct
  3. var_packed(self: _kratos.Generator, arg0: str, arg1: _kratos.PackedStruct, arg2: List[int]) -> _kratos.VarPackedStruct
vars(self: _kratos.Generator) → Dict[str, _kratos.Var]
vars_iter(self: _kratos.Generator) → Iterator
verilog_fn
verilog_ln
wire(self: _kratos.Generator, arg0: _kratos.Var, arg1: _kratos.Var) → None
wire_interface(self: _kratos.Generator, arg0: kratos::InterfaceRef, arg1: kratos::InterfaceRef) → None
wire_ports(self: _kratos.Generator, arg0: _kratos.Port, arg1: _kratos.Port) → kratos::Stmt
class _kratos.Transaction
class _kratos.Var
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VarCastType

Members:

Signed

Unsigned

AsyncReset

ClockEnable

Clock

Enum

Resize

AsyncReset = <VarCastType.AsyncReset: 3>
Clock = <VarCastType.Clock: 2>
ClockEnable = <VarCastType.ClockEnable: 4>
Enum = <VarCastType.Enum: 6>
Resize = <VarCastType.Resize: 7>
Signed = <VarCastType.Signed: 0>
Unsigned = <VarCastType.Unsigned: 1>
name
value
class _kratos.VarCasted
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
enum_type
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
target_width
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VarConcat
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VarExtend
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VarPackedStruct
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
is_packed
member_names(self: _kratos.VarPackedStruct) → Set[str]
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VarSlice
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
high
is_packed
low
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
parent_var
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
sliced_by_var
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VarVarSlice
add_attribute(*args, **kwargs)

Overloaded function.

  1. add_attribute(self: _kratos.Var, arg0: _kratos.passes.Attribute) -> None
  2. add_attribute(self: _kratos.Var, arg0: str) -> None
add_fn_ln(*args, **kwargs)

Overloaded function.

  1. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int]) -> None
  2. add_fn_ln(self: _kratos.Var, arg0: Tuple[str, int], arg1: bool) -> None
and_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
ashr(*args, **kwargs)

Overloaded function.

  1. ashr(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. ashr(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. ashr(self: int, arg0: _kratos.Var) -> kratos::Expr
assign(*args, **kwargs)

Overloaded function.

  1. assign(self: _kratos.Var, arg0: _kratos.Var) -> kratos::AssignStmt
  2. assign(self: _kratos.Var, rhs: int) -> kratos::AssignStmt
  3. assign(self: _kratos.Var, rhs: _kratos.Var) -> kratos::AssignStmt
attributes
cast(self: _kratos.Var, arg0: _kratos.VarCastType) → _kratos.Var
comment
concat(self: _kratos.Var, var: _kratos.Var) → kratos::VarConcat
duplicate(*args, **kwargs)

Overloaded function.

  1. duplicate(self: _kratos.Var, count: int) -> kratos::Expr
  2. duplicate(self: _kratos.Var, count: kratos::Const) -> kratos::Expr
eq(*args, **kwargs)

Overloaded function.

  1. eq(self: _kratos.Var, arg0: _kratos.Var) -> kratos::Expr
  2. eq(self: _kratos.Var, arg0: int) -> kratos::Expr
  3. eq(self: int, arg0: _kratos.Var) -> kratos::Expr
explicit_array
extend(self: _kratos.Var, width: int) → kratos::VarExtend
find_attribute(self: _kratos.Var, arg0: Callable[[_kratos.passes.Attribute], bool]) → List[_kratos.passes.Attribute]
fn_name_ln
generator
get_attributes(self: _kratos.Var) → List[_kratos.passes.Attribute]
handle_name(*args, **kwargs)

Overloaded function.

  1. handle_name(self: _kratos.Var) -> str
  2. handle_name(self: _kratos.Var, arg0: bool) -> str
  3. handle_name(self: _kratos.Var, arg0: kratos::Generator) -> str
has_attribute(self: _kratos.Var, arg0: str) → bool
high
is_packed
low
static move_sink_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
static move_src_to(arg0: _kratos.Var, arg1: _kratos.Var, arg2: kratos::Generator, arg3: bool) → None
name
or_(self: _kratos.Var, arg0: _kratos.Var) → kratos::Expr
parent_var
r_and(self: _kratos.Var) → kratos::Expr
r_not(self: _kratos.Var) → kratos::Expr
r_or(self: _kratos.Var) → kratos::Expr
r_xor(self: _kratos.Var) → kratos::Expr
raw_type_param
rename(self: _kratos.Var, arg0: str) → None
set_generator(self: _kratos.Var, arg0: kratos::Generator) → None
set_size_param(self: _kratos.Var, arg0: int, arg1: _kratos.Var) → None
signed
sinks
size
slice_var
sliced_by_var
sources
type(self: _kratos.Var) → kratos::VarType
verilog_ln
width
class _kratos.VerilogModule
pass_manager(self: _kratos.VerilogModule) → _kratos.passes.PassManager
run_passes(self: _kratos.VerilogModule) → None
verilog_src(*args, **kwargs)

Overloaded function.

  1. verilog_src(self: _kratos.VerilogModule) -> Dict[str, str]
  2. verilog_src(self: _kratos.VerilogModule, arg0: _kratos.SystemVerilogCodeGenOptions) -> Dict[str, str]
_kratos.comment(*args, **kwargs)

Overloaded function.

  1. comment(arg0: str) -> _kratos.CommentStmt
  2. comment(arg0: str, arg1: int) -> _kratos.CommentStmt
_kratos.constant(*args, **kwargs)

Overloaded function.

  1. constant(arg0: int, arg1: int, arg2: bool) -> _kratos.Const
  2. constant(arg0: str, arg1: int) -> _kratos.Const
  3. constant(arg0: object, arg1: int, arg2: bool) -> _kratos.Var
_kratos.create_stub(arg0: kratos::Generator) → str
_kratos.create_wrapper_flatten(arg0: _kratos.Generator, arg1: str) → _kratos.Generator
_kratos.extract_event_info(arg0: _kratos.Generator) → List[kratos::EventInfo]
_kratos.fix_verilog_ln(arg0: _kratos.Generator, arg1: int) → None
_kratos.generate_sv_package_header(*args, **kwargs)

Overloaded function.

  1. generate_sv_package_header(arg0: _kratos.Generator, arg1: str, arg2: bool) -> Tuple[str, int]
  2. generate_sv_package_header(arg0: _kratos.Generator, arg1: str, arg2: bool) -> Tuple[str, int]
_kratos.get_fn_ln(*args, **kwargs)

Overloaded function.

  1. get_fn_ln() -> Optional[Tuple[str, int]]
  2. get_fn_ln(arg0: int) -> Optional[Tuple[str, int]]
_kratos.get_frame_local(*args, **kwargs)

Overloaded function.

  1. get_frame_local(arg0: int) -> dict
  2. get_frame_local() -> dict
_kratos.mock_hierarchy(arg0: _kratos.Generator, arg1: str) → None
_kratos.mux(*args, **kwargs)

Overloaded function.

  1. mux(arg0: _kratos.Var, arg1: _kratos.Var, arg2: _kratos.Var) -> _kratos.Expr
  2. mux(arg0: _kratos.Var, arg1: int, arg2: _kratos.Var) -> _kratos.Expr
  3. mux(arg0: _kratos.Var, arg1: _kratos.Var, arg2: int) -> _kratos.Expr