HAL  v4.5.0-83-g30c8f0afc
The Hardware Analyzer - a comprehensive reverse engineering and manipulation framework for gate-level netlists.
bitorder_propagation.cpp File Reference
Include dependency graph for bitorder_propagation.cpp:

Go to the source code of this file.

Namespaces

 hal
 
 hal::bitorder_propagation
 

Functions

Result< std::map< MPG, std::map< Net *, u32 > > > hal::bitorder_propagation::propagate_module_pingroup_bitorder (const std::map< MPG, std::map< Net *, u32 >> &known_bitorders, const std::set< MPG > &unknown_bitorders, const bool enforce_continuous_bitorders)
 
Result< std::monostate > hal::bitorder_propagation::reorder_module_pin_groups (const std::map< MPG, std::map< Net *, u32 >> &ordered_module_pin_groups)
 
Result< std::map< std::pair< Module *, PinGroup< ModulePin > * >, std::map< Net *, u32 > > > hal::bitorder_propagation::propagate_bitorder (Netlist *nl, const std::pair< u32, std::string > &src, const std::pair< u32, std::string > &dst)
 Propagate known bit-order information from one module pin group to another module pin group of unknown bit order. More...
 
Result< std::map< std::pair< Module *, PinGroup< ModulePin > * >, std::map< Net *, u32 > > > hal::bitorder_propagation::propagate_bitorder (const std::pair< Module *, PinGroup< ModulePin > * > &src, const std::pair< Module *, PinGroup< ModulePin > * > &dst)
 Propagate known bit-order information from one module pin group to another module pin group of unknown bit order. More...
 
Result< std::map< std::pair< Module *, PinGroup< ModulePin > * >, std::map< Net *, u32 > > > hal::bitorder_propagation::propagate_bitorder (Netlist *nl, const std::vector< std::pair< u32, std::string >> &src, const std::vector< std::pair< u32, std::string >> &dst)
 Propagate known bit-order information from the given module pin groups to module pin groups of unknown bit order. More...
 
Result< std::map< std::pair< Module *, PinGroup< ModulePin > * >, std::map< Net *, u32 > > > hal::bitorder_propagation::propagate_bitorder (const std::vector< std::pair< Module *, PinGroup< ModulePin > * >> &src, const std::vector< std::pair< Module *, PinGroup< ModulePin > * >> &dst)
 Propagate known bit-order information from the given module pin groups to module pin groups of unknown bit order. More...
 
Result< std::map< std::pair< Module *, PinGroup< ModulePin > * >, u32 > > hal::bitorder_propagation::export_bitorder_propagation_information (const std::vector< std::pair< Module *, PinGroup< ModulePin > * >> &src, const std::vector< std::pair< Module *, PinGroup< ModulePin > * >> &dst, const std::string &export_filepath)
 Export word composition, known bitorder and connectivity in .json format to solve with external tools. More...
 
Result< std::map< std::pair< Module *, PinGroup< ModulePin > * >, u32 > > hal::bitorder_propagation::export_bitorder_propagation_information (const std::map< std::pair< Module *, PinGroup< ModulePin > * >, std::map< Net *, u32 >> &src, const std::set< std::pair< Module *, PinGroup< ModulePin > * >> &dst, const std::string &export_filepath)
 Export word composition, known bitorder and connectivity in .json format to solve with external tools. More...