NAME
Text::Cadenceparser - Perl module to parse Cadence synthesis tool
logfiles
VERSION
version 1.07
SYNOPSIS
my $parser = Text::Cadenceparser->new(folder => './REPORTS');
my $nr_warnings = $parser->count('warnings');
my $warnings = $parser->get('warnings');
$parser->overview(); # Prints a global report of the parsing results
$parser->list('error'); # Prints the errors to STDOUT
DESCRIPTION
Module to parse and filter Cadence synthesis tool reports. The idea is
to present the user with a short and comprehensible overview of the
synthesis results.
The module supports two ways of working: either you pass the 'folder'
parameter, in which case all files in that folder will be searched for
basic synthesis status reporting.
The other way of working is that you pass an area and/or power report
file as parameter. The module then supports generating a compact
overview of the results sorted based on a "key" and a "threshold".
As an example, consider a design that has been simulated for power
results. Pass the are and power report files as parameter, and select as
"key" 'active' and "threshold" '5'. The report will list all first-level
design units that contribute to the active power consumption and that
have a power consumption of more that 5% of the total power. The units
that contribute less than 5% of the power will be merged into a single
block and their resulting power consumption is also listed.
METHODS
"new(%parameters)"
This constructor returns a new Text::Cadenceparser object. Supported
parameters are listed below
folder
The folder where to gather the logfiles. If this option is passed,
the module will search through the folder and generate a short and
comprehensive overview of the results of the last synthesis run. If
you pass this parameter, other parameters will ignored.
area_rpt
Pass an area report file that will be used to gather area input. Not
to be used in combination with the 'folder' parameter.
power_rpt
Pass a power report file that will be used to gather power input.
Not to be used in combination with the 'folder' parameter.
key Key to sort the area/power results. Possible options are
active
leakage
area
threshold
The percentage-wise threshold of "key" that the design units need to
be above in order to be listed in the result table.
"files_parsed()"
This method reports the number of files that were parsed when creating
the object.
"count($type)"
This method returns the counted number of $type that were parsed.
$type can be either 'info', 'warning' or 'error'.
"overview()"
This method returns an overview of all parsed messages.
"get($type)"
Returns a hash containing the messages of type $type.
$type can be either 'info', 'warning' or 'error'.
"list($type)"
List the messages of type $type to STDOUT.
$type can be either 'info', 'warning' or 'error'.
"slack($clock)"
Report the slack of the synthesis run for a specific clock net
"report()"
Reports the reports/logs that are read
AUTHOR
Lieven Hollevoet <hollie@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Lieven Hollevoet.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.